Я пытаюсь реализовать следующий псевдокод в приложении nodejs -
async task1(){
await asyncFunc();
return true;
}
let task1IsDone = await task1();
if(task1IsDone){
task2();
}
Но из всей документации, которую я прочитал в async / await, похоже, что обычный способ использования async await - этокак -
let data;
data = await task1();
task2(data);
Есть ли способ использовать async await так, как я пытаюсь использовать в моем псевдо-коде?Есть ли какая-либо причина, чтобы не пытаться сделать это таким образом (возвращается просто логическое значение)?
Реальный код -
getList: async function(type,startDate){
request(BASE_URL+'data.json?tz=America/Vancouver&ftime=DeviceEntryDate&stime='+startDate+'&fids='+type, async (error, response, body) => {
console.log('error:', error);
console.log('statusCode:', response && response.statusCode);
await fs.writeFile('downloads/'+type+'.json',body, (err) =>{
if(err) {
console.log(err);
}
console.log('5');
});
console.log('7');
return true;
});
}
или
getList: async function(type,startDate){
await request(BASE_URL+'data.json?tz=America/Vancouver&ftime=DeviceEntryDate&stime='+startDate+'&fids='+type, (error, response, body) => {
console.log('error:', error);
console.log('statusCode:', response && response.statusCode);
fs.writeFile('downloads/'+type+'.json',body, (err) =>{
if(err) {
console.log(err);
}
console.log('5');
});
console.log('7');
});
return true;
}