2016-09-28 92 views
4

我想包括在我的应用程序和代码示例一个现有的组件我有这些依赖关系:我现在用'@angular'代替'angular2'角2,打字稿模块没有导出的常量“FORM_DIRECTIVES”

import {CORE_DIRECTIVES, FORM_DIRECTIVES, NgClass} from 'angular2/common'; 

这会我觉得是这样的:

import { Component, OnInit, CORE_DIRECTIVES } from '@angular/core'; 
import { FORM_DIRECTIVES } from '@angular/forms'; 

但是我得到这个错误

mypath/node_modules/@angular/forms/index"' has no exported member 'FORM_DIRECTIVES'. 
mypath/node_modules/@angular/core/index"' has no exported member 'CORE_DIRECTIVES'. 

我该如何包含FORM_DIRECTIVES,如果它们不再是angular2的一部分什么是替换或新方法来解决依赖关系?

我已经检查的角度changelog但找不到任何

回答

8

FORM_DIRECTIVES现在的FormsModule一部分,所以你应该导入FormsModule并将其添加到您的模块的进口。

CORE_DIRECTIVES现在是CommonModule的一部分,由BrowserModule导出。您已在AppModule中导入BrowserModule,因此您无需对CORE_DIRECTIVES执行任何操作。这里的基本模块的进口FormsModule的例子:

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

@NgModule({ 
    imports: [ 
     BrowserModule, 
     FormsModule 
    ], 
    declarations: [ 
     AppComponent 
    ], 
    bootstrap: [AppComponent] 
}) 

export class AppModule { } 
+0

怎么样CORE_DIRECTIVES或其他?我在哪里可以找到这些更改的列表? –

+0

@DarkoRodic编辑我的答案,增加了关于'CORE_DIRECTIVES'的部分。我不知道你可以在哪里找到完整的变更列表,说实话,也许别人可以帮助你。 –

2

,你应该安装:

npm install --save angular2 

这样的:

"dependencies": { 
    "@ngrx/store": "^1.2.1", 
    "angular2": "^2.0.0-beta.7", 
    "es6-promise": "^3.0.2", 
    "es6-shim": "^0.33.3", 
    "reflect-metadata": "0.1.2", 
    "rxjs": "5.0.0-beta.2", 
    "zone.js": "0.5.15" 
    } 

这工作:

import {ControlGroup, Control, FORM_DIRECTIVES} from "angular2/common"; 

@Component({ 
    selector: 'person-form', 
    directives: [FORM_DIRECTIVES], 
    template: require('./person_form.html') 
}) 

export class PersonForm { ... } 
This fails with FORM_DIRECTIVES as undefined: 

import {ControlGroup, Control} from "angular2/common"; 

@Component({ 
    selector: 'person-form', 
    directives: [FORM_DIRECTIVES], 
    template: require('./person_form.html') 
}) 

export class PersonForm { ... }