【发布时间】:2016-12-09 21:59:49
【问题描述】:
我有一个表格,点击一行中的链接时,会弹出一个模式,显示一个表格,您可以在其中编辑该表格的信息。
我正在尝试对这个表单使用响应式表单方法,但我无法弄清楚如何为我的模式绑定到 @Input,这是所选行的信息。
这是我尝试过的一个例子:
@Input() row;
form : FormGroup
constructor(rowModalService : RowModalService, fb : FormBuilder, public activeModal : NgbActiveModal) {
this.form = fb.group({
name : [''],
})
}
我尝试将 name 的值初始化为空字符串,然后找到一个有效的生命周期挂钩,当我的行输入未定义时,该挂钩能够更新该值,但我找不到任何允许这样做的生命周期挂钩。
这是我尝试过的:
ngOnInit() {
this.form.controls['name'].setValue(this.row.name);
}
任何有关最佳方式的帮助将不胜感激。如果没有模板驱动的方法,我无法找到一种方法。
【问题讨论】:
-
您尝试了哪些生命周期挂钩?
ngOnChanges在这里很明显......见angular.io/docs/ts/latest/api/core/index/OnChanges-class.html -
我认为这在开始时有效,但似乎我的 ngOnChanges 事件没有被触发。
标签: angular angular2-template angular2-forms