Angular-Materialの新しいリリースでは、Angular-Animations用のモジュールを追加する必要があります。BrowserAnimationsModuleとNoopAnimationsModuleの2つから選択することができます。公式ガイド]1にはこう書かれています。
一部のMaterialコンポーネントは、Angular Animationsモジュールに依存しています。 より高度な遷移を行えるようにするためです。もし、これらの アニメーションを動作させたい場合は、Angularのアニメーションモジュールをインストールする必要があります。 Angular/animations モジュールをインストールし、BrowserAnimations モジュールをアプリにインクルードする必要があります。 をアプリに組み込む必要があります。
npm install --save @angular/animations を実行します。 import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
@NgModule({... ... imports:[BrowserAnimationsModule], ... }) export class PizzaPartyAppModule { }. もし、プロジェクトに別の依存関係を追加したくない場合は、NoopAnimationsModuleを使用することができます。
import {NoopAnimationsModule} from '@angular/platform-browser/animations'(NoopAnimationsModule をインポートする。
@NgModule({ ... ... imports:[NoopAnimationsModule], ... }) export class PizzaPartyAppModule { }.
何が違うのかよくわかりません。全く同じに見えますが :)2つのモジュールの違いは何ですか?
noop` ("no operation") という名前が示すように、このモジュールは何もしません。これは、本物のアニメーションモジュールをモックしたユーティリティモジュールですが、実際にはアニメーションは行いません。
これは、アニメーションが遅すぎるプラットフォームや、実際にテストしたい内容にアニメーションが関係しないユニットテストに便利です。
BROWSER_ANIMATIONS_PROVIDERS` は実際のアプリケーションで使用されます。
プロバイダを実際のモジュールから分離することで、ローカルで実行できるようになります。 BrowserModuleに含めるようにGoogle3で修正しました。
BROWSER_NOOP_ANIMATIONS_PROVIDERS` は、テスト用に使用します。
プロバイダを実際のモジュールから分離して、ローカルで実行できるようにします。 BrowserTestingModuleに含めるために、Google3で修正しました。