我在網頁上有幾個下拉串列,它們通過對服務器的 api 呼叫來檢索它們的內容,這些都非常快,還有一個從資料庫中檢索 1000 行的附加呼叫——回應時間要長得多。我有這個 Javascript/Vue 代碼,當一切都加載完畢并準備就緒時運行:
setOrderStatuses: async function () {
...
},
setSpecialOrders: async function () {
...
},
setSubmitterNames: async function () {
...
},
...
mounted: function () {
this.$nextTick(async function () {
return await Promise.all([
this.setOrderStatuses(),
this.setSpecialOrders(),
this.setSubmitterNames()
]);
});
},
...其中一切都按預期檢索資料,但 UI 在所有承諾都完成之前不會更新。例如,如果我在服務器上放置一個斷點來阻止對 的回答setOrderStatuses(),那么在我單擊continue并填充承諾之前,其他任何方法都不會更新 UI 。
uj5u.com熱心網友回復:
只需使您的 muted 方法異步,例如:
async mounted () {
await this.setOrderStatuses()
await this.setSpecialOrders()
await this.setSubmitterNames()
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/310810.html
標籤:javascript Vuejs2 并行处理
