Angular按范围获取范围。$ id

时间:2016-12-20 10:31:12

标签: angularjs

我想知道如何按范围获取范围。 $ id 。我知道我可以在页面中获取所有范围,然后我可以找到一个范围,但我希望实现更简单。

例如:
1.我希望从 $ rootScope 获取id 100 的范围:

$rootScope.$getScope(100)

2。从当前的 $ scope 或变量 angular

$scope.$getScope(100)
angular.scope(100)

我能以这种方式获得指定范围吗?

1 个答案:

答案 0 :(得分:0)

答案表单评论是使用jQuery。如果你想要简单的javascript,更多功能方法,你可以这样做:

function getScope(scopeId){
     return Array.from(document.querySelectorAll(".ng-scope"))
     .map(el => angular.element(el).scope())
     .filter(scope => scope.$id == scopeId)[0]
}

$rootScope.getScope = getScope;    

据我所知,除了查询.ng-scope之外,没有其他方法可以在页面上查找所有范围。