Avec la nouvelle version Angular-Material, vous devez ajouter un module pour Angular-Animations. Vous pouvez choisir entre deux BrowserAnimationsModule et NoopAnimationsModule. Le guide officiel indique:
Certains composants Matériau dépendent du module d'animations Angular pour pouvoir effectuer des transitions plus avancées. Si vous souhaitez que ces animations fonctionnent dans votre application, vous devez installer le module @ angular/animations. et incluez le BrowserAnimationsModule dans votre application.
npm install --save @angular/animations import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; @NgModule({ ... imports: [BrowserAnimationsModule], ... }) export class PizzaPartyAppModule { }
Si vous ne souhaitez pas ajouter une autre dépendance à votre projet, vous pouvez utiliser le NoopAnimationsModule.
import {NoopAnimationsModule} from '@angular/platform-browser/animations'; @NgModule({ ... imports: [NoopAnimationsModule], ... }) export class PizzaPartyAppModule { }
Je ne comprends pas très bien quelle est la différence ici. Semble être exactement le même :) Quelle est la différence entre les deux modules?
Comme le nom noop
("pas d'opération"), ce module ne fait rien. C'est un module utilitaire qui se moque du vrai module d'animation mais n'anime pas réellement.
Cela peut être pratique sur les plates-formes où l'animation serait trop lente ou pour les tests unitaires, si l'animation n'est pas impliquée dans ce que vous voulez réellement tester.
BROWSER_ANIMATIONS_PROVIDERS
est utilisé pour une application réelle
Séparez les fournisseurs du module actuel afin que nous puissions effectuer une modification locale dans Google3 afin de les inclure dans BrowserModule.
BROWSER_NOOP_ANIMATIONS_PROVIDERS
est utilisé pour les tests
Séparez les fournisseurs du module actuel afin que nous puissions effectuer une modification locale dans Google3 pour les inclure dans BrowserTestingModule.