angular - ngModelChange 在模型实际更改之前触发
问题描述
是否有一个事件在模型更改之后触发,而不是在更改之前触发?每次设置复选框时,我都需要检查是否可以启用下一个按钮。所以我遍历我的列表以检查任何对象被选中。但是,这些值在 ModelChange 事件之后首先绑定:
<tr *ngFor="let social of socialMediaList">
<td>{{social.name}}</td>
<td>
<input type="checkbox" (ngModelChange)="onSocialMediaChange($event)" type="checkbox" name="options"
[(ngModel)]="social.selected">
</td>
</tr>
我的js:
onSocialMediaChange($event) {
this.ageRangeList = null;
this.canContinueFromSocialNetwork = this.socialMediaList.filter((item) => item.selected === true).length>0;
}
解决方案
确保ngModelChange属性位于ngModel属性之后。
<input
type="checkbox"
[(ngModel)]="social.selected" // 1st place
(ngModelChange)="onSocialMediaChange($event)" // 2nd place
name="options">
推荐阅读
- java - 如何在 Springt Boot 中创建一个调用包含构造函数注入的服务的测试?
- javascript - 使用 Python 下载 JavaScript 加载的音频
- google-cloud-firestore - 如何使用 Google Cloud Functions 将这个大型 JSON 导入 Firestore 数据库?
- python - 如何返回对象序列的最大值,其中每个对象具有不同值的相同字段?
- reactjs - React.js 中的匹配总是不返回任何内容
- node.js - 将多个视频合并为一个 .mp4
- python-3.x - For 循环/错误:“NoneType”类型的对象没有 len()
- android - Android中加载事件中的异常行为
- pytorch - 在pytorch中实现的vgg16的训练损失并没有减少
- angular - 使用 DataSource 元素功能的角度垫表