Angularjs 获取父项';指令中的s作用域数组
抱歉,如果是重复的,但我找不到解决方案 我有以下资料:Angularjs 获取父项';指令中的s作用域数组,angularjs,angularjs-directive,angularjs-scope,Angularjs,Angularjs Directive,Angularjs Scope,抱歉,如果是重复的,但我找不到解决方案 我有以下资料: appDrct.directive('jsonArray', [function () { return { link: function (scope, element, attrs, ctrl) { console.log(scope.$parent.categories); } }; }]); 这给了我一个空数组(类别不是空的)。如果我打印这个:console.
appDrct.directive('jsonArray', [function () {
return {
link: function (scope, element, attrs, ctrl) {
console.log(scope.$parent.categories);
}
};
}]);
这给了我一个空数组(类别不是空的)。如果我打印这个:console.log(scope.$parent)代码>,我可以看到我的数组和里面的项目!为什么呢?如何获取阵列
编辑:
它是在模态视图中
div(class="modal-header")
div(json-array='categories')
只需使用范围.类别
scope.$parent.categories
-只有当您的指令具有scope:true
时才是正确的那么这应该可以工作…而且,scope.categories
也应该可以工作-该范围将查找父级。您也可以发布HTML吗?还有一些我们没有看到的事情正在发生。仍然得到一个空数组@ncohen您可能在其他地方出了问题:可能是因为div(json数组)处于模式视图中吗?@ncohen是的,如果您使用的是ui引导模式,默认情况下视图范围将创建为$rootScope的子级,因此将无法访问您的范围。但您可以通过将作用域传递到模态配置来改变这种行为(然后模态的作用域将被创建为传递的作用域的子级)哦,就是这样。。。我正在使用ui引导。你能给我举个例子说明你会怎么做吗?我不完全明白