无法将formGroup作为输入传递给组件

时间:2019-01-14 12:45:21

标签: angular typescript angular-reactive-forms angular-components

我正在设计一种具有重复的复杂逻辑的表格。我也使用反应形式的方法。由于逻辑是可重复的,因此我考虑为其创建一个组件。 以下是来自父表格的呼叫。

<ms-diag [parentForm] = "SOForm"></ms-diag>

我正在将父表单作为子组件的输入。但是我在子组件中收到undefined作为输出

  @Input() parentForm : FormGroup;  

  constructor() {
   this.text = 'Hello World';
   console.log('New Value >>>>>>>>>>>>>>>>>>>>');
   console.log(this.parentForm);
  }

我在这里想念东西吗?

1 个答案:

答案 0 :(得分:2)

eval属性在@Input中不可用。它们在constructor中可用。因此,将您的ngOnChanges代码移至constructor即可。像这样:

ngOnChanges

PS:这绝不意味着您应该在@Input() parentForm: FormGroup; constructor() {...} ngOnChanges() { this.text = 'Hello World'; console.log('New Value >>>>>>>>>>>>>>>>>>>>'); console.log(this.parentForm); } 内初始化Component属性。您应该在ngOnChanges方法内完成此操作。