【发布时间】:2015-05-12 00:38:45
【问题描述】:
我正在使用https://github.com/DaftMonk/generator-angular-fullstack。
我有 2 个架构:
- 图表
- 标题:字符串
- 数据集:数组
- _creator:登录用户ID
- 用户
- 姓名
- 电子邮件
- _id
当我 console.log 当前用户返回
$scope.getCurrentUser = Auth.getCurrentUser();
console.log($scope.getCurrentUser);
但是当我尝试通过控制台记录 _id 时:
$scope.getCurrentUser = Auth.getCurrentUser();
console.log($scope.getCurrentUser._id);
返回
未定义
谁能解释我做错了什么?
【问题讨论】:
-
也许你应该从 Angular 教程开始,阅读 JavaScript 的异步执行。谷歌的“角度承诺”。基本上,请求还没有解决,你要等待它被加载...
-
那为什么当我 console.log 它返回整个对象但 ._id 它未定义?
-
我不知道 angular-fullstack,但
Auth.getCurrentUser()返回一个承诺,而不是你的currentUser。您需要以下内容:Auth.getCurrentUser().then(function(result){// do something with result; result should be your currentUser}); -
@Marius:当你传递一个引用时,控制台是一个观察者,而
._id会被立即评估 -
除了这个问题,
isLoggedIn也没有正确更新。一些前端元素通过 ng-show/hide 依赖它。登录后,该函数仍然返回false,直到我刷新页面。有什么线索吗?
标签: javascript jquery angularjs node.js mongodb