gpt4 book ai didi

forms - 访问父组件中的 angular ngform 状态

转载 作者:行者123 更新时间:2023-12-02 05:57:35 26 4
gpt4 key购买 nike

这是父 HTML

<parent-component>
<child></child>
<button type="submit" [disabled]="!childForm.valid">
</parent-component>

这是子 HTML
<child>
<form #childform=ngform>
<input required type="text">
</form>
</child>

我需要访问父组件中的子窗体状态

最佳答案

子模板:

<form #childform=ngForm>
<input required type="text">
</form>

子组件:
export class ChildComponent implements OnInit {

@Output() validityChange = new EventEmitter<boolean>();
@ViewChild('childform') form: NgForm;
private validStatus: boolean;

ngOnInit() {
if (!this.form) return;
this.form.valueChanges
.subscribe(_ => {
if(this.validStatus !== this.form.valid) {
this.validStatus = this.form.valid;
this.validityChange.emit(this.form.valid);
});
}
}

父模板:
<child (validityChange)="childFormValid = $event"></child>
<button type="submit" [disabled]="!childFormValid">

父组件:
export class ChildComponent implements OnInit {

private childFormValid: boolean;

...
}

关于forms - 访问父组件中的 angular ngform 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44818536/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com