AngularJS - 获取ng-repeat中的下一个兄弟范围

时间:2014-08-08 23:01:35

标签: angularjs angularjs-scope

鉴于这个非常简单的标记:

<div ng-repeat="item in items" item>

指令:

app.directive('item', function()
{
    return function(scope, element, attrs)
    {


    }
})

在点击事件中说,我想获得下一个项目的范围并做一些事情。我可以使用scope.$$nextSibling()element.next().scope()

使用其中任何一个都有优势/劣势吗?或者有更好的方法来获得下一个兄弟的范围吗?

2 个答案:

答案 0 :(得分:1)

你应该这样做 在范围内,调用$ rootScope。$ broadcast('SOME_CHANGE_IN_SCOPE',...); 在兄弟范围内,调用$ scope。$ on('SOME_CHANGE_IN_SCOPE',...)  您当然可以在事件中包装数据,请查看angularjs doc以获取更多详细信息

答案 1 :(得分:0)

不确定您要尝试做什么,但绝不应使用以$$开头的任何角度变量。它们用于内部实现,并不保证在发布到发布时保持不变。