我一直在试图影响父范围中的变量来切换指令内的ng-show。该指令是包含ng-repeat指令的自定义指令。这个想法是,一旦ng-repeat结束,我想隐藏包含div的元素以及其中的元素。AngularJS指令绑定
这里有一个Plunkr证明我的情况:http://beta.plnkr.co/edit/C42Z25?p=preview 而且,这里的中的jsfiddle比较,它使用了同样的问题,但它不是一个NG重复,所以它的工作原理:http://jsfiddle.net/dyzPC/
因此,有几个问题。在我的指令中,我必须使用scope.$parent.showMe = true
来更改父范围的showMe
,我似乎无法仅使用scope.showMe = true
来设置它。我尝试了隔离范围,没有范围,真正的范围,似乎没有任何工作。
此外,在jquery回调函数中,我似乎无法重置父范围showMe作为scope.$parent.showMe = false
。这可以防止我在显示内容时显示包含div,并在没有内容时隐藏它。
在附注中,最后一个问题是使用$last
。在plunkr例子中,使用$ last是可能的,但在我的真实代码中,ng-repeat集合正在被HTTP响应拦截器填充。这似乎阻止使用$ last,因为所有元素都以$last = true
结尾。是否有另一种方法来检测ng-repeat何时完成?
我可以帮助设置父值。我在指令中有相同的问题设置值。 http://stackoverflow.com/questions/16494457/how-to-set-an-interpolated-value-in-angluar-directive – Anton 2013-05-15 04:00:11