假设模板有这样的代码片段:
<form #myForm="ngForm">
<md-input-container>
<input mdInput name="address" [formControl]="addressCtrl" [(ngModel)]="address" required>
</md-input-container>
</form>
该组件具有以下内容:
export class AddressComponent {
@ViewChild("myForm")
myForm: NgForm;
addressCtrl = new FormControl();
address: string;
constructor() {}
validate() {
this.addressCtrl.markAsTouched();
console.log("Is address valid? " + this.addressCtrl.valid);
console.log("Is myForm valid? " + this.myForm.form.valid);
}
}
validate() 由其他一些动作调用,旨在以编程方式触发表单验证。
但是,在控制台日志中,显示 addressCtrl 无效,而 myForm 仍然有效。
如果任何子控件无效,任何人都知道如何将 myForm 状态更新为无效?
谢谢!