Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 按作用域获取作用域。$id_Angularjs - Fatal编程技术网

Angularjs 按作用域获取作用域。$id

Angularjs 按作用域获取作用域。$id,angularjs,Angularjs,我想知道,如何按作用域获取作用域。$id。我知道我可以在页面中获取所有作用域,然后我可以找到一个作用域,但我正在寻找更简单的实现 例如: 1.我想从$rootScope:获取id为100的范围 二,。从当前$scope或变量 我可以用这种方式获得指定的范围吗?回答表单注释正在使用jQuery。如果您想要简单的javascript,更具功能性的方法,您可以: function getScope(scopeId){ return Array.from(document.querySelec

我想知道,如何按作用域获取作用域。$id。我知道我可以在页面中获取所有作用域,然后我可以找到一个作用域,但我正在寻找更简单的实现

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

二,。从当前$scope或变量


我可以用这种方式获得指定的范围吗?

回答表单注释正在使用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

之外,没有其他方法可以找到页面上的所有作用域。谢谢,我知道这是可行的,但我想避免使用DOM元素。嗯。。okej,但它也基于DOM元素,它类似于第一个解决方案@SaEChowdary(链接在下面),但我正在寻找不使用DOM元素的解决方案。
$scope.$getScope(100)
angular.scope(100)
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;