我有一个模型驱动的表单,其字段从按钮点击事件后面的/ typescript文件后面的代码更新。这在Angular 2中运行良好。但是在我迁移到Angular 4后,我在更新时遇到以下异常,
ExpressionChangedAfterItHasBeenCheckedError:表达式已更改 在检查之后。
以下是我要更新表单值的代码
this.myForm.controls['myFormArray'].value['results'] = this.Results;
其中this.Results是一个以表格形式显示的计算结果数组。
如果我在组件中将ChangeDetectionStratergy添加到OnPush,那么更新工作正常。但我不知道这个问题的根本原因,特别是在升级到Angular 4之后。