在我的自定义指令中,我需要访问对象$ scope。$ parent.users。
如果我是console.log $ scope。$ parent:
pillbox_directives.directive('scheduleCell', function(){
return {
restrict: 'EA',
link: function($scope, element, attrs){
console.log($scope.$parent);
}
}
});
...然后记录所需的$ parent,并按预期包含对象'users':
$$ChildScope: function b() {this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$id=++ob;this.$$ChildScope=null;}
$$childHead: n
$$childTail: n
$$listenerCount: Object
$$listeners: Object
$$nextSibling: null
$$prevSibling: null
$$watchers: Array[4]
$$watchersCount: 0
$id: 2
$parent: n
cloneDrop: function ($index) {
deadDrop: function ($index) {
generateSchedule: function (day) {
logOff: function () {
notSorted: function (obj) {
setup: Array[2]
users: Array[2]
__proto__: n
但是,如果我是console.log($ scope。$ parent.users),它会记录'undefined'
为什么我无法以这种方式访问$ scope。$ parent.users?
答案 0 :(得分:0)
users数组使用来自控制器的$ http.get调用进行填充,并且在指令尝试console.log($ scope。$ parent.users)
时尚未完成填充。解决方案是添加ng-if ="用户"指向元素,以确保用户'存在并在指令加载之前加载。