Angular $rootScope 对象 属性 不可访问
Angular $rootScope object property not accessible
我的$rootScope.globals
对象如下:
{
currentUser: {
id: "56309272279724c02b319392"
name: "Özgür Adem"
picture: "http://www.gravatar.com/avatar/c4ca4238a0b23452sdcc503a6f76829z? d=retro"
ptoken: "mFFa9l25HbB4fbh7"
role: Object
},
unread: 0
}
当我像这样 console.log($rootScope.globals)
或 console.log($rootScope.globals.currentUser)
打印到控制台时,一切都很好。
但是当我尝试打印 console.log($rootScope.globals.unread)
时,输出为 undefined
。
为什么?我认为如果 属性 值等于 undefined
,则在其他输出中不应将其视为 0。我错了吗?
这是怎么回事?
我没有发现你的代码有任何问题,可能是你没有注入 $rootScope 但这是有效的 Plunker
控制器代码:
App.controller('TodoController',['$scope','$rootScope',function($scope,$rootScope){
$rootScope.globals = {
currentUser: {
id: "56309272279724c02b319392",
name: "Özgür Adem",
picture: "http://www.gravatar.com/avatar/c4ca4238a0b23452sdcc503a6f76829z? d=retro",
ptoken: "mFFa9l25HbB4fbh7",
role: Object
},
unread: 0
}
console.log($rootScope.globals.unread)
}]);
我的$rootScope.globals
对象如下:
{
currentUser: {
id: "56309272279724c02b319392"
name: "Özgür Adem"
picture: "http://www.gravatar.com/avatar/c4ca4238a0b23452sdcc503a6f76829z? d=retro"
ptoken: "mFFa9l25HbB4fbh7"
role: Object
},
unread: 0
}
当我像这样 console.log($rootScope.globals)
或 console.log($rootScope.globals.currentUser)
打印到控制台时,一切都很好。
但是当我尝试打印 console.log($rootScope.globals.unread)
时,输出为 undefined
。
为什么?我认为如果 属性 值等于 undefined
,则在其他输出中不应将其视为 0。我错了吗?
这是怎么回事?
我没有发现你的代码有任何问题,可能是你没有注入 $rootScope 但这是有效的 Plunker
控制器代码:
App.controller('TodoController',['$scope','$rootScope',function($scope,$rootScope){
$rootScope.globals = {
currentUser: {
id: "56309272279724c02b319392",
name: "Özgür Adem",
picture: "http://www.gravatar.com/avatar/c4ca4238a0b23452sdcc503a6f76829z? d=retro",
ptoken: "mFFa9l25HbB4fbh7",
role: Object
},
unread: 0
}
console.log($rootScope.globals.unread)
}]);