如何在 Angular 2 中包含模块

How to include module in Angular 2

我是 Angular 2 的新手,我正在学习 "The hero" 教程。
我需要导入这些模块:

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'.

我怎样才能包含它?

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

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' 更新。

Assumption you installed the angular-cli via npm install -g angular-cli

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

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

完成后,您可以重新创建项目并使用上面的代码完成英雄之旅演示。