Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.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 在一个元素中使用ng repeat和custom指令时作用域不同_Angularjs_Angularjs Directive_Angularjs Ng Repeat - Fatal编程技术网

Angularjs 在一个元素中使用ng repeat和custom指令时作用域不同

Angularjs 在一个元素中使用ng repeat和custom指令时作用域不同,angularjs,angularjs-directive,angularjs-ng-repeat,Angularjs,Angularjs Directive,Angularjs Ng Repeat,我有一个指令,比如: angular.module('myApp')。指令('myDirective',函数(){ 返回{ templateUrl:“/views/myView.html”, 限制:'E', 链接:函数(范围、元素、属性){ console.log(范围); log(angular.element(element.scope()); } }; }); html模板为: {{item.text} 而查看html是: 我发现scope和angular.element(elem

我有一个指令,比如:

angular.module('myApp')。指令('myDirective',函数(){
返回{
templateUrl:“/views/myView.html”,
限制:'E',
链接:函数(范围、元素、属性){
console.log(范围);
log(angular.element(element.scope());
}
};
});
html模板为:

{{item.text}
而查看html是:


我发现
scope
angular.element(element).scope()
不是同一个,但我必须使用
angular.element(element).scope()
方法来获取其他地方重复项的范围。 我是不是误解了什么

注意

只有在包含jQuery时,才能复制代码。

这里是相关的

主要原因是:angular1.2.x不支持jQuery2.0.x,angular1.3.x也可以

因此,这里的解决方案是:

  • angular1.2.x+jQuery 1.x
  • angular1.3.x+jQuery 2.x
  • 仅限angularjs

你说得对。也面临类似的问题。作为旁注…您不需要将元素包装在AngularJS.element上-它已经是angular元素。@Darren您是对的
ng repeat
为使用AngularJS 1.2.19测试的每个项目以及每个项目
scope
angular.element(element.scope())创建子范围
返回相同的对象。但是不同的项目有自己的
范围
。你用的是什么版本?