如果表单内的模型已更新,则ExpressionChangedAfterItHasBeenCheckedError

时间:2017-04-24 15:51:46

标签: angular

我知道变量检测机制在Angular中是如何工作的,但是这个例子让我很难过。有一个plunker

如果在输入处于活动状态时按任意键,则会发生错误:

  • 如果您删除form代码,则可以使用
  • 如果您在template标记之外发起了一个事件(例如在inputtemplate标记旁边创建一个table-view标记,那么
  • 如果您移除[(ngModel)]="item.model"表单my-app模板,则可以使用
  • 如果您从selectedItem === item模板中移除table-view,则可以使用
  • 如果您将this.selectedItem = item替换为this.selectedItem = this.items[0],则可以使用

因此,当selectedItem标记存在或事件来自{{1}时,我无法通过ngModel通过对象更新form标签内容。可能在事件发生后,检测机制会在template再次更新ngModel+form之后运行。

知道为什么会出现错误?没有上述步骤如何解决?

0 个答案:

没有答案