私は自分のAngular 2 CLIプロジェクトを1.0.0-beta.11-webpack.2
から1.0.0-beta.11-webpack.8
にng init
経由で更新しました。私のプロジェクトではAngular 2.0.0-rc.5
およびAngular Material 2.0.0-alpha.7-4
ですが、ng serve
で実行すると、次のエラーが発生します。
ERROR in ./src/app/app.module.ts
Module not found: Error: Can't resolve 'hammerjs' in '/home/jan/src/fm-repos/fm-ui/src/app'
@ ./src/app/app.module.ts 38:0-18
@ ./src/app/index.ts
@ ./src/main.ts
@ multi main
ERROR in [default] /home/jan/src/fm-repos/fm-ui/node_modules/@angular2-material/core/gestures/MdGestureConfig.d.ts:4:39
Cannot find name 'HammerManager'.
ERROR in [default] /home/jan/src/fm-repos/fm-ui/node_modules/@angular2-material/slide-toggle/slide-toggle.d.ts:67:19
Cannot find name 'HammerInput'.
ERROR in [default] /home/jan/src/fm-repos/fm-ui/node_modules/@angular2-material/slider/slider.d.ts:50:19
Cannot find name 'HammerInput'.
ERROR in [default] /home/jan/src/fm-repos/fm-ui/node_modules/@angular2-material/slider/slider.d.ts:52:24
Cannot find name 'HammerInput'.
このバグを回避するには、プロジェクトにhammerjs
を一時的に追加します。
npm install hammerjs --save
npm install @types/hammerjs --save-dev
モジュール定義にインポートします:
/** TODO: remove when work-around is not needed*/
import 'hammerjs';
@NgModule({
declarations: [
AppComponent,
HeaderComponent,
// ...
私は問題に直面していました
npm uninstall hammerjs --save
次にnpm install hammerjs@latest
私の問題を解決しました
hammerjsの最新のインストール済みバージョンは2.0.8ですAngularは5.2.11です