Angular2:ngModule,BrowserModule,FormsModule不是导出成员

时间:2016-08-10 03:29:55

标签: angular

我正在浏览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:

enter image description here

有什么想法吗?

8 个答案:

答案 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-b​​rowser'导入{BrowserModule}; 试试这个命令:

  

npm update

答案 6 :(得分:0)

您必须将此符号导入模块文件中。我很确定您将其导入组件文件中。

答案 7 :(得分:-1)

“表格”而不是“表格”,请尝试将其替换为

import { FormsModule } from '@angular/forms';