Javascript Ng if on指令具有重写函数的双向绑定
我已经设置了一个指令,它将从父控制器接收一个函数作为它的属性之一。此函数将由directives控制器替换,并且父控制器可以通过使用传递的函数来访问此函数。我遇到的问题是,在指令上放置ng if属性时,传入函数不再被替换。这是什么原因造成的?我将如何着手解决此问题?我附上了一个例子Javascript Ng if on指令具有重写函数的双向绑定,javascript,angularjs,angularjs-directive,binding,Javascript,Angularjs,Angularjs Directive,Binding,我已经设置了一个指令,它将从父控制器接收一个函数作为它的属性之一。此函数将由directives控制器替换,并且父控制器可以通过使用传递的函数来访问此函数。我遇到的问题是,在指令上放置ng if属性时,传入函数不再被替换。这是什么原因造成的?我将如何着手解决此问题?我附上了一个例子 父级-带ng if {{parentHelloWorld()}} Parent2-无ng if {{parentHelloWorld()}} 使用ng show而不是ng if。 ng if导致元素从DOM中删
父级-带ng if
{{parentHelloWorld()}}
Parent2-无ng if
{{parentHelloWorld()}}
使用ng show
而不是ng if
。
ng if
导致元素从DOM中删除。使用ng show
而不是ng if
。
ng如果
导致元素从DOM中删除。我认为您最好创建一个服务,而不是替换子控制器中的函数。我觉得那有点乱
就个人而言,我会使用一个服务来注册函数,然后您可以使用来自父控制器的相同服务来调用它。我认为您最好创建一个服务,而不是替换子控制器中的函数。我觉得那有点乱 就个人而言,我会使用一个服务来注册函数,然后您可以使用来自父控制器的相同服务来调用它
<div class="parent" ng-controller="pCtrl">
<h3>Parent - with ng-if</h3>
<div>{{parentHelloWorld()}}</div>
<child ng-if="testBool" rep-fun="parentHelloWorld"></child>
</div>
<br/>
<div class="parent" ng-controller="pCtrl2">
<h3>Parent2 - without ng-if</h3>
<div>{{parentHelloWorld()}}</div>
<child rep-fun="parentHelloWorld"></child>
</div>