使用`disableDeprecatedForms(),在RC5中提供Forms()`

时间:2016-08-17 16:27:37

标签: forms angular observable

没有停用旧表单(在RC4>中它是引导过程的一部分)

disableDeprecatedForms(),
provideForms()

我无法渲染数据(克服了可观测量),例如在选择框中(选项/ * ngFor)。

在哪里可以停用RC5中的旧表单?

(下面的OverviewComponent具有带选择框的表单)

这是新的 main.ts

import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

这是新的 app.module.ts

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { APP_BASE_HREF } from '@angular/common';
import { RouterModule } from '@angular/router';
import { HttpModule } from '@angular/http';
import { FormsModule } from '@angular/forms';

import { AppComponent } from './app.component';
import { routes } from './app.routes';

import {
  OverviewComponent,
} from './forms/index';

@NgModule({
  imports: [
    BrowserModule,
    HttpModule,
    FormsModule,
    RouterModule.forRoot(routes),
  ],
  declarations: [
    AppComponent,
    OverviewComponent,
    BasisdateneingabeComponent
  ],
  providers: [{
    provide: APP_BASE_HREF,
    useValue: '<%= APP_BASE %>'
  }],
  bootstrap: [AppComponent]

})

export class AppModule { }

1 个答案:

答案 0 :(得分:0)

根据thisdisableDeprecatedForms()仍存在于RC5中,但已被弃用。您的问题可能来自您的应用程序使用RC4表单API这一事实。最好的解决方案是将表单更新为RC5,以避免新版本出现进一步的问题。

代替那个,you should be able to find a fix here(Bootstrapping自编写以来已经改变了一点)。您可以使用DeprecatedFormsModule。在app.module中,导入它并将其添加到imports数组中。像这样:

//...
import {DeprecatedFormsModule} from '@angular/common';

@NgModule({
  //...
  imports: [
   //....
   DeprecatedFormsModule
  ],
  //...
})