我正在浏览Angular2教程 https://angular.io/docs/ts/latest/tutorial/toh-pt5.html。一切顺利的路由。 Visual Studio代码显示前03行的错误:
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
作为
[ts]
Module '"c:/Users/ktran/Source/Repos/angular2-quickstart-ts/node_modules/@angular/core/index"' has no exported member 'NgModule'.
文件夹node_modules:
有什么想法吗?
答案 0 :(得分:30)
正如Kim Phung所说,这是因为Angular的新RC刚刚发布。更改packages.json中的以下行:
// ...snip...
"dependencies": {
"@angular/common": "2.0.0-rc.5",
"@angular/compiler": "2.0.0-rc.5",
"@angular/core": "2.0.0-rc.5",
"@angular/forms": "0.3.0",
"@angular/http": "2.0.0-rc.5",
"@angular/platform-browser": "2.0.0-rc.5",
"@angular/platform-browser-dynamic": "2.0.0-rc.5",
// ...file continues...
然后在你的控制台中运行:
npm update
很高兴去!
答案 1 :(得分:9)
某些模块刚刚添加到新版本的Angular中,因此如果您不进行更新,则无法导入。
经过大约半小时的搜索,得到了一个解决方案:
创建一个新文件夹并cd到您的文件夹。
在命令行中,键入:
git clone https://github.com/angular/quickstart
cd quickstart
npm install
将旧代码复制到新创建的项目
答案 2 :(得分:2)
如果此解决方案对您没有帮助,请尝试重新打开VSCode 。 对我来说这是编辑问题。
答案 3 :(得分:0)
我刚才有一个类似的问题,使用quickstart示例将示例应用程序升级到2.0.1。 我修改了它不仅更新了package.json,还修改了systemjs.config.js和typings.json
答案 4 :(得分:0)
请确保已将FormsModule包含在ngModule导入
中@NgModule({
imports: [ BrowserModule,**FormsModule** ],
declarations: [ AppComponent ],
bootstrap: [ AppComponent ]
})
答案 5 :(得分:0)
如果您遇到此类错误。 从'@ angular / core'导入{NgModule}; 从'@ angular / platform-browser'导入{BrowserModule}; 试试这个命令:
npm update
答案 6 :(得分:0)
您必须将此符号导入模块文件中。我很确定您将其导入组件文件中。
答案 7 :(得分:-1)
“表格”而不是“表格”,请尝试将其替换为
import { FormsModule } from '@angular/forms';