我有三个异步功能:
getAccounts = async () => {
try {
const result = await someAsyncJob();
...
}
catch(err) {
...
}
}
getPages = async () => {
try {
const result = await someAsyncJob();
...
}
catch(err) {
...
}
}
getDepositList = async () => {
try {
const result = await someAsyncJob();
...
}
catch(err) {
...
}
}
这里,我有一个名为“getAccounts”,“getPages”,“getDepositList”的函数。我需要按顺序调用这些函数,所以我写了这样的代码:
getData = async () => {
try {
await getAccounts();
await getPages();
await getDepositList();
}
catch(err) {
...
}
}
从本文(https://medium.com/@peterchang_82818/asycn-await-bible-sequential-parallel-and-nest-4d1db7b8b95c)开始,它必须按顺序工作,但是当我运行它时,它们会一起调用,并且我的所有逻辑都搞砸了。
如何以顺序方式运行这些功能?
答案 0 :(得分:3)
如果执行看到await,它应该只在promise被解决或被拒绝后继续,因此它应该是顺序的。我希望你也等待getData()?