angular - Angular Form Valid Observable subcribe 找不到 onvalid 事件
问题描述
我引入了一个具有输入控制的共享表单。我需要检查表格是否有效。如果为 false,代码将禁用保存按钮。
在我的角度 html 代码中,我有以下内容
<button [disabled]="disablesavebutton" mat-raised-button
(click)="save()">Save</button>
在我的 ts 代码中,我有以下内容
import 'rxjs/add/operator/filter'
export class MyDialogComponent {
disableSaveButton: boolean = false;
baseControl: SharedComponent;
ngOnInit() {
this.baseControl.Form.statusChanges
.filter(s => this.disableSaveButton =
this.baseControl.Form.valid)
.subscribe(val => onvalid)
}
}
我的目标是基本表单无效,通过订阅触发 disableSavebutton 布尔值,从而禁用按钮。我收到一个错误,“找不到名称 onvalid。你的意思是 oninvalid”oninvalid 需要一个 ev: Event 参数,但我对此不熟悉。
任何帮助表示赞赏。谢谢
在我的角度 html 代码中,我有以下内容
<button [disabled]="disablesavebutton" mat-raised-button (click)="save()">Save</button>
在我的 ts 代码中,我有以下内容
import 'rxjs/add/operator/filter'
export class MyDialogComponent {
disableSaveButton: boolean = false;
baseControl: SharedComponent;
ngOnInit() {
this.baseControl.Form.statusChanges
.filter(s => this.disableSaveButton = this.baseControl.Form.valid)
.subscribe(val => onvalid)
}
}
解决方案
statusChanges Observable 将表单的当前状态作为字符串发出。要禁用您的按钮,您只需检查状态是否为无效:
this.baseControl.Form.statusChanges.subscribe(status => {
this.disableSaveButton = status === "INVALID";
});
推荐阅读
- r - R:一个单元格中有多个值,只选择其中一个?
- java - 使用转换器时无法从“convertToDatabaseColumn”抛出异常
- scala - scala项目intellij中的scalafx(未解析的依赖路径:)
- reactjs - 不能 .map 为材质 RadioGroup
- python - 将列表的列转换为字典的列
- docker - Traefik v2 - 启用 gzip 压缩
- android - E/AndroidRuntime:致命异常:OkHttp Dispatcher
- android - Android TabLayout 类无法解析
- java - 如何清除资源泄漏?
- json - 当键中的点在超过 2 个过滤器字段中时,JSONPath 语法不起作用