情况是这样的:
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”输入的值时,没有任何反应。如何从子组件中渲染脏表单?
最佳答案
默认情况下,任何嵌套组件都不是 Angular 创建用于跟踪状态的 ngForm 数据结构的一部分。您需要将表单(通过#someForm)传递到每个子组件中。
这里有一个例子:angular2 - validating FormControlName in child component of parent FormGroup
关于javascript - 表单内的 viewChild 不会从原始状态触发它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44640558/