web-dev-qa-db-fra.com

Module introuvable: Erreur: impossible de résoudre «hammerjs»

J'ai mis à jour mon Angular 2 CLI à partir de 1.0.0-beta.11-webpack.2 à 1.0.0-beta.11-webpack.8 via ng init. Mon projet utilise Angular 2.0.0-rc.5 et Angular Matériau 2.0.0-alpha.7-4 mais lorsqu'il est exécuté avec ng serve J'obtiens l'erreur suivante:

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'.
12
Jan Nielsen

Pour contourner ce bogue, ajoutez temporairement hammerjs à votre projet:

npm install hammerjs --save
npm install @types/hammerjs --save-dev

et importez dans la définition de votre module:

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


@NgModule({
  declarations: [
    AppComponent,
    HeaderComponent,
    // ...
22
Jan Nielsen

J'étais confronté à un problème

npm uninstall hammerjs --save

puis npm install hammerjs@latest

résolu mon problème

la dernière version installée de hammerjs est 2.0.8 Angular is 5.2.11

3
Biswadev