NgModule не является функцией
С прошлой пятницы 19 августа 2016 года я начал получать сообщение об ошибке консоли javascript во время выполнения:
Ошибка: TypeError: s.NgModule не является функцией (…)
в моем приложении на базе RC4. Я еще не пытался обновиться до RC5, поэтому я ожидаю, что мой код на RC4 все еще будет работать в соответствии с документацией. Мой package.json (немного анонимный):
{
"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://git@gitscm.xyzco.com/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"
}
}
2 ответа
Поправьте меня если я ошибаюсь.
Я считаю, что NgModule - это функция RC5. Вам, вероятно, придется обновить приложение angular 2 до RC5.
Это означает, что один из ваших пакетов был обновлен и требует версии Angular 2 для RC5. Посмотрите на одно из следующего:
"ng2-bootstrap": "^1.0.24",
"ng2-redux": "^3.3.0",
"ng2-translate": "^2.1.0",
"redux": "^3.5.2",
"redux-thunk": "^2.1.0",
^ Перед номером пакета означает, по крайней мере, эту версию, но если доступна более поздняя версия, она будет обновлена до нее. Способ исправить это удалить "^", удалить каталог "node_modules" и снова выполнить "npm install".