我有一个指令,我使用这样:
<dir model="data"></dir>
该指令具有孤立的范围。
scope :{ model:'=' }
现在我试图在该指令上使用ng-show,使用我的页面的$范围的另一个属性,如下所示:
<dir ng-show="show" model="data"></dir>
但是它不起作用,因为该伪指令试图在其范围内找到show属性。
我不希望该指令知道它的容器可能会选择隐藏它的事实。
我发现的解决方法是将指令包含在< div>并在该元素上应用ng-show,但是我不喜欢这个强制我使用的额外元素:
<div ng-show="show" > <dir model="data"></dir> </div>
有更好的做法吗?
您可以考虑迁移到1.2或更高版本。
The isolate scope is now only exposed to directives with a scope property.这意味着,ng-show不再受您的指令的影响,您可以像您试图首先写的那样写:
原文链接:https://www.f2er.com/angularjs/144736.html<dir ng-show="show" model="data"></dir>
@角度开发者:伟大的工作,伙计们!