nodejs文件
var result= async function meet(){
var link= undefined;
calendar.events.insert({
calendarId: 'primary',
conferenceDataVersion: '1',
resource: event
}, (err, temp) => {
link = temp.data.hangoutLink; // I want to update link but it is not updating
});
return link;
}
console.log(result);//it shows undefined;
您使用https://github.com/yuhong90/node-google-calendar
吗?
然后插入已经返回一个承诺:
var result= async function meet(){
let link = await calendar.events.insert({
calendarId: 'primary',
conferenceDataVersion: '1',
resource: event
})
return link.data.hangoutLink
}
请。。。如果你把async
放在它前面,它会给你一个承诺。
承诺是可能的,你可以在上面使用.then()
来获得你的结果
result().then(res => {
console.log(res);
})
您可以查看此函数的async
版本(如果存在(,并将其与await
或then
一起使用,也可以使用对new Promise
的回调来包装此调用,如下所示:
var link= await (new Promise(resolve, reject) => {
calendar.events.insert(
{ calendarId: 'primary', conferenceDataVersion: '1', resource: event },
(err, temp) => {
if (err) {
reject(err)
}
resolve(temp.data.hangoutLink)
})
}));
return link;