2016-08-22 2 views
0

Ab letzten Freitag 19. August 2016 begann ich eine Laufzeit bekommen JavaScript-Konsole Fehler:NgModule ist keine Funktion

Fehler: Typeerror: s.NgModule ist keine Funktion (...)

in meinem RC4- basierte Anwendung. Ich habe noch nicht versucht, auf RC5 zu aktualisieren, also würde ich erwarten, dass mein RC4-basierter Code immer noch nach der Dokumentation funktioniert. Mein package.json ist (ein bisschen anonymisiert):

{ 
    "name": "xxxxxxxxxx", 
    "version": "2.0.0", 
    "description": "xxxxxxxxxxxxxxxxxyyyyyyyyy", 
    "scripts": { 
    "start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ", 
    "lite": "node server.js --lifecycle=lcl", 
    "postinstall": "typings install", 
    "tsc": "tsc", 
    "tsc:w": "tsc -w", 
    "typings": "typings" 
    }, 
    "author": "xxxxxxxxxxxxxxxxx", 
    "dependencies": { 
    "@angular/common": "2.0.0-rc.4", 
    "@angular/compiler": "2.0.0-rc.4", 
    "@angular/core": "2.0.0-rc.4", 
    "@angular/http": "2.0.0-rc.4", 
    "@angular/platform-browser": "2.0.0-rc.4", 
    "@angular/platform-browser-dynamic": "2.0.0-rc.4", 
    "@angular/router": "3.0.0-beta.2", 
    "@angular/upgrade": "2.0.0-rc.4", 
    "@angular/forms": "0.2.0", 
    "xyzco-bootstrap-custom": "git+ssh://[email protected]/asf/xyzco-bootstrap-custom.git", 
    "core-js": "2.4.1", 
    "jquery": "^3.1.0", 
    "ng2-bootstrap": "^1.0.24", 
    "ng2-redux": "^3.3.0", 
    "ng2-translate": "^2.1.0", 
    "redux": "^3.5.2", 
    "redux-thunk": "^2.1.0", 
    "reflect-metadata": "^0.1.3", 
    "rxjs": "5.0.0-beta.6", 
    "systemjs": "0.19.27", 
    "zone.js": "^0.6.12" 
    }, 
    "devDependencies": { 
    "body-parser": "^1.15.2", 
    "concurrently": "^2.0.0", 
    "del": "^2.2.1", 
    "express": "^4.14.0", 
    "gulp": "^3.9.1", 
    "gulp-clean-css": "^2.0.11", 
    "gulp-concat": "^2.6.0", 
    "gulp-inline-ng2-template": "^2.1.0", 
    "gulp-jspm-build": "0.0.15", 
    "gulp-rename": "^1.2.2", 
    "gulp-sass": "^2.3.2", 
    "gulp-sequence": "^0.4.5", 
    "gulp-traceur": "^0.17.2", 
    "gulp-typescript": "^2.13.6", 
    "gulp-uglify": "^1.5.4", 
    "helmet": "^2.1.1", 
    "lite-server": "^2.2.0", 
    "mongojs": "^2.4.0", 
    "sql-injection": "0.0.5", 
    "systemjs-builder": "^0.15.23", 
    "typescript": "^1.8.10", 
    "typings": "^1.3.2" 
    } 
} 

Antwort

0

, dass einer Ihrer Pakete bedeutet, wurde aktualisiert und erfordert die RC5-Version von Angular 2: Schauen Sie eine der folgenden Möglichkeiten:

"ng2-bootstrap": "^1.0.24", 
"ng2-redux": "^3.3.0", 
"ng2-translate": "^2.1.0", 
"redux": "^3.5.2", 
"redux-thunk": "^2.1.0", 

Das^vor der Paketnummer bedeutet mindestens diese Version, aber wenn eine spätere Version verfügbar ist, wird sie auf diese aktualisiert. Die Lösung besteht darin, das "^" zu entfernen, das Verzeichnis "node_modules" zu löschen und "npm install" erneut auszuführen.

+0

Danke Boyan - Wechsel zu "ng2-translate": "2.2.2", behoben :-) – nxn

+0

Awesome! Ich freue mich, wenn es so einfach ist! –

3

Korrigieren Sie mich, wenn ich falsch liege.

Ich glaube, NgModule ist RC5-Funktion. Sie müssen wahrscheinlich Ihre angular 2 App auf RC5 aktualisieren.

+0

Ja, ich benutzte "ng2-translate": "^ 2.1.0", das RC5-Abhängigkeiten verwendete - der Wechsel zur fixierten Version "2.2.2" erfordert nur RC4 und behob mein Problem vorerst, obwohl ich ein Upgrade durchführen muss zu gegebener Zeit. – nxn