檔案https://vuejs.org/guide/built-ins/suspense.html#async-components說為了使用 Suspense 組件,我們需要使組件“異步”。
<script setup>
const res = await fetch(...)
const posts = await res.json()
</script>
<template>
{{ posts }}
</template>
但我不確定如何使用 Options API 使組件異步。
uj5u.com熱心網友回復:
使用 Options API,該組件通過使用以下方式成為異步async setup()組件:
export default {
??
async setup() {
const res = await fetch(...)
const posts = await res.json()
return {
posts
}
}
}
這實際上記錄在問題鏈接到的檔案部分的上方。
演示
uj5u.com熱心網友回復:
如檔案所述,僅支持async setup函式和異步script setup。Options API 是遺留的,不應該接收新功能。
從源代碼中可以看出,僅setup支持。
可以訪問內部組件實體并遵循作業方式setup,例如:
beforeCreate() {
this.$.asyncDep = promise;
},
但這是一種無證且駭人聽聞的方式,可能會在沒有通知的情況下被破壞。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/440236.html
標籤:Vue.js 异步 Vuejs3 vue-options-api
