找不到模块:错误:无法解析'hammerjs'

Jan*_*sen 12 angular2-cli angular

我将Angular 2 CLI项目更新1.0.0-beta.11-webpack.21.0.0-beta.11-webpack.8via 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'.
Run Code Online (Sandbox Code Playgroud)

Jan*_*sen 23

要解决此错误,请暂时添加hammerjs到您的项目中:

npm install hammerjs --save
npm install @types/hammerjs --save-dev
Run Code Online (Sandbox Code Playgroud)

并导入模块定义:

/** TODO: remove when work-around is not needed*/
import 'hammerjs';


@NgModule({
  declarations: [
    AppComponent,
    HeaderComponent,
    // ...
Run Code Online (Sandbox Code Playgroud)


Bis*_*dev 10

我遇到了问题

npm uninstall hammerjs --save
Run Code Online (Sandbox Code Playgroud)

然后 npm install hammerjs@latest

解决了我的问题

hammerjs 最新安装的版本是 2.0.8 Angular 是 5.2.11