我在 DOM 中有一个 Angular 模板。当我的控制器从服务中获取新数据时,它会更新 $scope 中的模型,并重新呈现模板。到目前为止一切都很好。
问题是,在重新渲染模板并在 DOM 中(在本例中为 jQuery 插件)后,我还需要做一些额外的工作。
好像应该有一个事件要听,比如AfterRender,但是我找不到任何这样的东西。也许指令会是一种方式,但它似乎也为时过早。
这是一个 jsFiddle 概述了我的问题:Fiddle-AngularIssue
== 更新 ==
根据有用的评论,我相应地切换到一个指令来处理 DOM 操作,并在该指令中实现了一个模型 $watch。但是,我仍然遇到相同的基本问题;$watch 事件中的代码在模板被编译并插入到 DOM 之前触发,因此,jquery 插件总是评估一个空表。
有趣的是,如果我删除 async 调用,整个事情都可以正常工作,所以这是朝着正确方向迈出的一步。
这是我更新的 Fiddle 以反映这些变化:http : //jsfiddle.net/uNREn/12/