标签: angularjs
在这个例子中:
<div ng-hide="hideMe"> <my-directive></my-directive> </div>
我希望控制器中的代码myDirective,而不是hideMe === true时运行。
myDirective
hideMe === true
有没有办法做到这一点,而不是将所有控制器代码包装在if (!hideMe === true)语句中?
if (!hideMe === true)
答案 0 :(得分:1)
ngHide只是隐藏元素,但如果您不希望它被运行,则应使用ngIf代替。根据文档,ngIf删除或重新创建DOM树的一部分(即,没有元素,没有指令,没有控制器),但ngHide只改变其可见性。
ngHide
ngIf
<div ng-if="hideMe"> <my-directive></my-directive> </div>
答案 1 :(得分:0)
您应该实际使用ng-if指令,因为如果条件为false,则不会对内部代码进行求值。您可以参考以下链接以便更好地理解。
ng-if
what is the difference between ng-if and ng-show/ng-hide