我无法在控制器中获取当前的用户ID。我有这个:
controller.js:
constructor(Auth) {
this.getCurrentUser = Auth.getCurrentUserSync;
// console.log(this.getCurrentUser()._id) returns undefined
}
但是,如果我在html中打印:
p {{ctrl.getCurrentUser()._id}}
我完全得到了用户ID。
为什么会这样?如何获得控制器中的用户ID?
编辑:
Auth.getCurrentUser()
函数如下所示:function getCurrentUser(callback) {
var value = _.get(currentUser, '$promise') ? currentUser.$promise : currentUser;
return $q.when(value).then(function (user) {
safeCb(callback)(user);
return user;
}, function () {
safeCb(callback)({});
return {};
});
}
最佳答案
就像这样访问
console.log($$state.value.data._id);
演示
var userinfo = { $$state: {
status: 1,
value: {
data: {
__v: 0,
_id: "596b33283055cd0f2442cd85"
}
}
}
}
console.log(userinfo.$$state.value.data._id);