如何在Angular 2中包含模块

时间:2016-09-01 22:45:41

标签: angular angularjs-ng-model angular-cli

我是Angular 2的新手,我正在关注“英雄”教程 我需要导入这些模块:

import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule }   from '@angular/forms';

我开始使用Angular2 CLI(创建应用程序的简便方法),但现在当我尝试导入这些时,我得到的错误如下:

Error: Typescript found the following errors:"...node_modules/@angular/core/index"' has no exported member 'NgModule'.

我如何包含它?

2 个答案:

答案 0 :(得分:1)

  

假设您通过npm install -g angular-cli

安装了angular-cli

该版本的CLI仍然基于rc4,如果您想使用更新的(当前)版本,则需要通过以下方式安装:

npm uninstall -g angular-cli
npm cache clean
npm install -g angular-cli@webpack

一旦您完成了这项工作,您就可以重新创建项目,并在浏览英雄演示时使用上面的代码。

答案 1 :(得分:0)

您的语法看起来正确。您需要将这些包含在导入元数据数组中。 NgModule使用包含imports数组的@NgModule Decorator。你可以像这样导入它们:

import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule }   from '@angular/forms';

@NgModule({
    imports: [
        BrowserModule,
        FormsModule,
    ],

此外,当您检查package.json时,请确保它们包含在您的依赖项中:

"@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",
    "@angular/router": "3.0.0-rc.1",

更新package.json后,运行' npm install'更新。