【发布时间】:2018-07-14 04:39:15
【问题描述】:
我的代码:
let AuthUser = data => {
return google.login(data.username, data.password).then(token => { return token } )
}
当我尝试运行这样的东西时:
let userToken = AuthUser(data)
console.log(userToken)
我明白了:
Promise { <pending> }
但是为什么呢?
我的主要目标是从返回承诺的google.login(data.username, data.password) 获取令牌到变量中。然后才执行一些操作。
【问题讨论】:
-
@LoïcFaure-Lacroix,见这篇文章:medium.com/@bluepnume/…
-
@LoïcFaure-Lacroix 看看
getFirstUser函数 -
那又如何呢?这是一个返回承诺的函数。
-
@LoïcFaure-Lacroix 所以你的意思是即使在那个例子中我们也需要使用 then 来访问在 getFirstUser 函数中返回的数据承诺?
-
在那个例子中是的,唯一的另一种方法是使用 ES7 语法“等待”,它似乎可以解决停止当前上下文的执行以等待承诺的结果。如果你阅读这篇文章,你会看到它。但是由于 ES7 可能几乎还没有在任何地方得到支持,是的。 “那么”差不多就是这样。
标签: javascript node.js promise