【发布时间】:2017-08-01 03:50:18
【问题描述】:
我有以下代码:如何从这个承诺中提取价值?
var value = Auth.loggedinUser().then(function (user){
return user.id
});
console.log(value)
这是我的承诺:
Promise {$$state: Object}
$$state:Object
status:1
value:2
__proto__:Object
__proto__:Object
我正在尝试将值取出并将其设置为我的值变量。应该是 2 或任何它会返回的值。
我的目标是尽可能将 promise 的值设置为全局变量
【问题讨论】:
-
Promise
.then方法是如何...注意,.then的返回值是一个 Promise,只有在.then回调中才能获得承诺的值(一旦它是已解决) -
我可以将其设置为外部的全局变量吗?
-
是的,但它仍会被异步设置,因此无法保证该值何时会出现......因此,没有理由将全局值用于未来值。注意:异步代码在你理解之前是令人眼花缭乱的
-
全局变量是禁忌。你没有正确掌握
Promises -
@Wainage - 我敢说他一般不会掌握异步代码:p
标签: javascript asynchronous promise