Angular [(ngModel)]在其他事件触发后更改数据

拉格

我不是Angular事件的专家,但这是我的问题。如果我运行以下代码,则会用错误的信息大声地更新后端,因为item.their_platformtogglePlatform()触发之前它不会发生变化

模板:

<mat-checkbox (ngModelChange)="togglePlatform()" [(ngModel)]="item.their_platform"></mat-checkbox>

TS:

 togglePlatform(){
      //update backend with the new value for item.their_platform
  }

我已经通过在togglePlatform方法中使用超时解决了这个问题,尽管我希望在这种情况下我可以将其他方法绑定到该方法上,这才有意义。

有更好的活动吗?这是使用mat-checkbox与使用Vanilla Angular的副作用吗?

谢谢

HTN

不要总是依赖执行的顺序,因为您不一定总是之前到达的。在您的情况下,解决方案应为:

<mat-checkbox (ngModelChange)="togglePlatform($event)" [(ngModel)]="item.their_platform"></mat-checkbox>
togglePlatform(value) {
     // update backend with the value, not item.their_platform
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Angular2中设置ngmodel后,如何确保触发选择更改事件?

反映其他浏览器angular2的相同ngModel的ngModel更改

在表单控件Angular中更改数据

如何在Angular 8中使用Change事件更改数据

使用 [(NgModel)] 更改绑定的 Angular 表中的值会影响其他字段

Google事件监听器触发后,Angular2中的更改后如何更新视图?

Angular2,(更改)事件不会触发

Angular 6 Observables-从.subscribe()函数提取数据并在其他地方使用

如何使用 Angular 在其他组件中保存和获取数据

Angular:为什么复选框的(更改)事件仅在双击后才触发?

在其他活动中修改数据库后,如何重新填充arrayadapter?

无法在其他视图中显示Angular模型的副本

在其他javascript框架模板中运行angular指令

Angular 2 setinterval()继续在其他组件上运行

访问在其他.js文件中定义的Angular模块

Angular 2在其他功能之前运行服务功能

asp:Button-onclick事件会在其他隐藏代码后触发代码?

使用Highcharts-angular动态更改数据系列类型

使用Rxjs或其他方法监听Angular中的数据库数据更改

测试中的输入更改后未更新Angular 4 ngModel

在Angular中更改路线事件的数据

Angular Integration测试:测试发出其他组件的事件时调用的函数,如何模拟事件数据?

Quill 编辑器未在 Angular 中触发(更改)事件

Angular 2 click事件回调,无需触发更改检测

Angular Material MatChipList 不会触发更改,也不会选择事件

如何在其他Angular应用的子路由中使用Angular应用?

触发调度事件时删除 Angular、ngrx 数据

克隆到其他PC后Angular无法正常工作

Angular JS-进入其他状态而不更改URL