我想使用jQuery和Javascript中的async / await模式并行访问三个api方法。这三个调用的结果应写入“可观察的观察”中。我创建了以下代码:

await Promise.all([
    (async() => vm.allHaulers(await $.get(baseAddress + 'GetCompleteHaulerList')))(),
    (async() => vm.allPlants(await $.get(baseAddress + 'GetCompletePlantList')))(),
    (async() => vm.allTrailers(await $.get(baseAddress + 'GetCompleteTrailerList')))()
]);


所有括号看起来都很笨重。有没有更优雅的解决方案?

最佳答案

只需使用$ .get返回的Promise的.then

await Promise.all([
    $.get(baseAddress + 'GetCompleteHaulerList').then(vm.allHaulers),
    $.get(baseAddress + 'GetCompletePlantList').then(vm.allPlants),
    $.get(baseAddress + 'GetCompleteTrailerList').then(vm.allTrailers)
]);


有时“旧”工具效果更好:p

关于javascript - 使用异步/等待模式并行获取多个jQuery,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59265367/

10-10 06:40