情况如下:
parent.component.html
<form #someForm >
<input type="text" name="title" [(ngModel)]="parentVar" />
<child-component />
<input type="submit" [disabled]="someForm.form.pristine" />
</form>
child.component.html
<div>
<input type="number" name="foo" [(ngModel)]="childVar" />
</div>
当我更改'title'输入的值时,提交按钮被启用,但是当更改'foo'的值时输入没有任何反应。如何从子组件中渲染表单?
答案 0 :(得分:0)
默认情况下,任何嵌套组件不是Angular创建的用于跟踪状态的ngForm数据结构的一部分。您需要将表单(通过#someForm)传递给每个子组件。
这里有一个例子:angular2 - validating FormControlName in child component of parent FormGroup
答案 1 :(得分:0)
您可以简单地创建一个在子组件中的表单发生更改时发出的事件。 在ur子组件中使用EventEmitter!