我无法获取 Controller 中的当前用户 ID。我有这个:
controller.js:
constructor(Auth) {
this.getCurrentUser = Auth.getCurrentUserSync;
// console.log(this.getCurrentUser()._id) returns undefined
}
但是,如果我在 html 中打印:
p {{ctrl.getCurrentUser()._id}}
我完美地得到了用户 ID。
为什么会出现这种情况?如何获取 Controller 中的用户 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);
关于javascript - Angular-Fullstack 获取当前用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45130754/