【发布时间】:2016-11-23 20:11:05
【问题描述】:
我有一个错误
Can't bind to 'formGroup' since it isn't a known property of 'form'
将项目更新到 angular2 RC.5 后
app.module.ts:
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
DeprecatedFormsModule,
HttpModule,
TranslateModule.forRoot({
provide: TranslateLoader,
useFactory: (http: Http) => new TranslateStaticLoader(http, '/assets/i18n', '.json'),
deps: [Http]
}),
ConfigurationDevicesModule,
ConfigurationEditModule,
ControlModule,
ResourceEditModule,
UniWebControlInfoModule,
routing
],
bootstrap: [ AppComponent ]
})
export class AppModule {
}
myComponent.module.ts
@NgModule({
declarations: [
ConfigurationDevicesComponent
],
imports: [
BrowserModule,
TranslateModule
],
exports: [
ConfigurationDevicesComponent
]
})
export class ConfigurationDevicesModule {
}
模板html示例:
<form [formGroup]="selectBackground">
<div *ngIf="backgrounds" class="form-group">
<h5>{{ 'CONFIGURATION_DEVICES.ALL_BACKGROUNDS' | translate }}</h5>
<select formControlName="selectBackgroundId">
<option *ngFor="let background of backgrounds" [value]="background.id">{{ 'CONFIGURATION_DEVICES.ID' | translate }} {{ background.id }} {{ 'CONFIGURATION_DEVICES.NAME' | translate }} {{ background.name }}</option>
</select>
</div>
</form>
在 Angular 2 RC4 中,formGroup 工作正常。
我尝试同时导入 DeprecatedFormsModule 和 DFormsModule ,问题是一样的。在官方文档 Angular 现在我找不到任何关于 formGroup 或再次改变构建表单的方式?
【问题讨论】:
-
selectBackground应该是字符串还是属性? -
您使用
DeprecatedFormsModule是故意的吗? -
this.selectBackground = new FormGroup({ selectBackgroundId: this.selectBackgroundId });
-
不,我开始测试 DeprecatedFormsModule 因为 formModel 没有带来结果,我愿意接受任何解决方案
-
改用
ReactiveFormsModule。
标签: forms angular typescript