Ale*_*dis 5 javascript compilation angularjs angular-ng-if angular-directive
我有一个自定义指令myDirective,在一个元素上执行任务.
我在一个ng-if区块中有这个指令
<div ng-if="condition">
<div my-directive></div>
</div>
Run Code Online (Sandbox Code Playgroud)
像这个小提琴:http://jsfiddle.net/hGnvv/只有ng-if在我的$http请求加载后条件变为true .
该指令可能在运行时编译,但从未链接,因此代码永远不会运行.如果我更换ng-if由ng-show该指令工作正常.
有解决方案吗
编辑:我无法使用,ng-show因为我在表单中有130个指令.无论如何都会运行20个指令,另一个根据我的对象类型运行.
ng-if="type == 1" 然后加载这些元素 ng-if="type == 2" 然后加载其他元素等如果我更改ng-if为ng-show,表单需要加载8秒而不是1秒.
问题不是指令没有运行,而是$watch我在其中的函数根本没有运行。我无法理解问题的确切原因,因为相同的指令在外部工作正常ng-if。
无论如何,将我更改$watch为 ->$watchCollection现在工作正常,因为它可以看到我正在 $watching 的对象的所有更新。
| 归档时间: |
|
| 查看次数: |
7479 次 |
| 最近记录: |