【发布时间】:2017-09-09 07:49:03
【问题描述】:
我需要获取一个异步函数的值。我尝试使用 Promise,但这不起作用:
const res = new Promise(function (resolve, reject) {
gm(readStream).size({ bufferStream: true }, function (err, size) {
if (!err) resolve(size)
})
})
console.log(res)
我得到的结果是Promise { <pending> }
【问题讨论】:
-
使用 Promise 不会让你的代码同步。
res.then(function (ret) { console.log(ret); }) -
这里不需要讽刺@adeneo。你曾经是个初学者。
-
好吧,您在实际使用过承诺、异步/等待和回调之前问过问题,所以您清楚地知道什么是异步,除非您只是复制/粘贴随机问题为了好玩?
-
我的意思是 -> stackoverflow.com/questions/45948918/… 加油!
-
显然我在理解这些事情时遇到了一些问题。我认为对我来说存在一些误解。这就是我问这个基本问题的原因。我仍然无法将 nadavvadan 的答案转换为 async/await 版本
标签: javascript node.js promise gm