22

由于题外话,这是一个重写:

我写了一个下拉指令。我两次使用该指令作为一种工作流程。第一个下拉列表通过更改操作触发第二个模型的刷新。尽管模型正确更新,但视图没有。尽管角度模型的 console.log() 是正确的,但您在下拉菜单中选择项目的次数很多,第二个下拉列表显示旧项目和新项目。

视图具有无限递归。将 ng-include 与一个 ng/template 的 id 一起使用,该 ng/template 会对其自身进行递归:

我最初显示模板代码的 plunkr 是这样的: http ://plnkr.co/edit/jera17uCluGsFs8o5hRG?p=preview

我不明白为什么视图没有完全刷新?

要被更新。

亲切的问候,亚历克斯

4

1 回答 1

37

通常我所做的是使用 ui-if 指令,它基本上是 angularui 团队制作的 if 语句,所以我将把它放在也是指令的元素上,并说如下内容:

<div ui-if="mydata.prop" my-custom-directive></div>

这样,如果 myData.prop 更改或我将其短暂设置为 null 然后重新应用它,它将删除然后将我的 html 指令转换回 DOM 导致它再次评估我的指令。

于 2013-10-12T20:35:23.517 回答