web-dev-qa-db-fra.com

tapis-curseur: ne pas mettre à jour immédiatement sur glisser

J'utilise @ angular/material dans mon application Angular 5. La version de Angular Material que j'utilise est la 5.0.2. J'utilise @ angular/animations 5.1.2.

J'ai un cas d'utilisation très simple du curseur, comme ceci:

<mat-slider style="width:100%;"></mat-slider>

mais pour une raison quelconque, lorsque vous faites glisser la poignée du curseur, il ne se déplace pas vers sa nouvelle position jusqu'à ce que la souris soit relâchée, ce qui n'est évidemment pas très bon. J'ai vérifié la démo Matériel et cela fonctionne comme prévu: le curseur se déplace lorsque la souris est déplacée et ne saute pas lorsque la souris est relâchée.

Quelqu'un peut-il suggérer pourquoi cela pourrait se produire? Ca ne passera jamais AC au travail!

10
serlingpa

Ne fonctionnait pas pour moi, même après l’installation de hammerjs par Étape 5 Soutien aux gestes . Enfin trouvé un commentaire dans les numéros sur github qui l’ont résolu, en gros:

import { BrowserModule, HAMMER_GESTURE_CONFIG } from '@angular/platform-browser';
import { GestureConfig } from '@angular/material';

providers: [
    { provide: HAMMER_GESTURE_CONFIG, useClass: GestureConfig },
]

dans root.module.ts.

33
Lee Richardson

J'ai eu le même problème, résolu en important hammerjs dans polyfills.ts

npm install hammerjs --save Ajoutez "import 'hammerjs';" aux polyfills.ts.

Si cela ne fonctionne pas, il se peut que quelque chose d'autre se passe. Vous devez également vous assurer que "BrowserAnimationsModule" est importé dans votre app.module.ts.

8
Paul Haggo

J'avais un problème connexe avec la valeur non mise à jour, distinguer (change) de (input) était le truc.

0
bunt

J'ai eu le même problème résolu avec l'importation BrowserAnimationsModule avant MaterialModules.

0
Adil B