从节点js函数返回值
我在下一个js应用程序中使用节点npm模块从api获取数据。
static async getInitialProps() { const zxapi = new Zxapi(connectId, secretKey); const res2 = await zxapi.programs({ region: "DE" }, function(err, result) { if (err != null) { return err } console.log(result, "before return"); return result console.log(result, "after return"); }); return { res2 }; }
我需要返回res2
的值。 “返回前” console.log
将数据logging到terminal并在那里终止。 我究竟做错了什么? 谢谢
你可以检查zxapi.programs
返回Promise
? 如果没有,你可能不得不创build一个函数,使其返回一个Promise
。
例如,你可以使用类似的东西
function zxpromise() { return new Promise((resolve, reject) => zxapi.programs({ region: "DE" }, function(err, result) { if (err != null) { reject(err); } console.log(result, "before return"); resolve(result); console.log(result, "after return"); })); }
然后,你可以调用zxpromise
const res2 = await zxpromise()