很抱歉,如果我在这里问这个问题,但尝试了很多方法,但无法解决这个问题。
我正在使用这个Library,我运行了这个例子,一切都很好,但是当我 尝试在异步函数范围之外使用结果。像这样:
let x;
const payload = {"Traffic":99,"Growth":9,"Transactions":9,"Weight":33};
let promise = new Promise((resolve, reject) => {
decisionTable.execute_decision_table("Volumetrics",
decision_table,payload, (err, results) => {
resolve(results);
});
});
x = promise.then(
result =>{return (result) }
);
console.log (x);
总是得到这个:
Promise { <pending> }
而不是json对象
我想是我对 Promise 和异步函数的无知。任何帮助将非常感激。谢谢你。
您只能在传递给
then()
的函数中使用它,如下所示:
promise.then(
result => console.log(result)
);
如果你想做其他很酷的事情,你就必须在那里完成所有事情。
如果您不喜欢它的外观,请查看
async/await
语法,它在大多数情况下更具可读性,如下所示:
let x = await promise;
console.log (x);