2017-02-14 102 views
0

比方说,我有相同的名称“父:马”多指令(每一页上,我可以有不同数量的这些指令 - 动态数)AngularJS指令 - 多重指令同名

<div ng-app="app"> 
    <div parent-elem></div> 
    <div parent-elem></div> 
    <div parent-elem></div> 
</div> 

有没有办法知道(在链接函数内)AngularJS已完成呈现页面上所有具有相同名称的指令? 在指令链接函数内部 - 我怎么知道这个指令是最后呈现的?

注:不使用NG-重复

+1

如果你正在制作一个“可重用指令”或一个组件,它应该是一个独立的元素,它本身并不依赖任何其他元素的状态或整个页面的状态。如果你的父母依赖于知道它是否是最后一个被渲染的东西,那么它有一个设计缺陷。 – Claies

+1

这是说,这*感觉就像一个[XY问题](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem/66378#66378)。您正在询问一个可能的解决方案,以解决并不完全清楚的问题。 *为什么它重要*如果它是第一个或最后一个呈现? – Claies

回答

0

你应该已经写了,同样的指令,多次:P

现在,这完全取决于你的指令,你如何做到这一点。 它可以保持计数器在服务或rootScope可能是每当它初始化。

如果您在本例中使用了ng-repeat,那么您有一个bool $ last,它可以告诉您渲染的元素是否为last,您可以通过任何属性传递给指令。