我从API调用数据,并有一个如下所示的解析器:
Query: {
async getSomething(parent, args, ctx, info) {
const kek = yada.aol.emails(function (err, res) {
return[{name: "lmao"}]
// returns null every time
})
return [{name: "lol"}]
// returns correctly
},
},但是,我需要返回的数据将是函数中的响应。我想知道为什么我返回的嵌套在该函数中的任何内容都返回null,以及我如何继续适当地塑造数据?
发布于 2021-06-27 09:17:11
namecheap.domains.getList函数是异步的。在回调function (err, res) {}之前执行最后一个return。你需要还给我一个承诺。
要么namecheap.domains.getList支持Promise,你可以直接返回它(但我不知道那是什么),或者你可以让回调函数解析Promise:
Query: {
getDomains(parent, args, ctx, info) {
return new Promise((resolve, reject) => {
namecheap.domains.getList((err, res) => {
if (err) return reject(err);
resolve(res);
})
});
},
},https://stackoverflow.com/questions/68147264
复制相似问题