學習如何在Vue 3中實現動態元件導入
P粉253800312
2023-08-24 16:00:23
<p>根據這篇文章,我想要將元件動態地匯入到我的Vue 3應用程式中。視圖的程式碼如下:</p>
<pre class="brush:php;toolbar:false;"><template>
<div class="page">
<latest-box v-if="showLatestBox" />
</div>
</template>
<script>
// @ 是 /src 的別名
// 這種方式有效
//import LatestBox from '@/components/LatestBox.vue'
export default {
name: 'Page 1',
data() {
return {
showLatestBox: true,
}
},
components: {
LatestBox: () => import('@/components/LatestBox.vue') // 此方式無效
}
}
</script></pre>
<p>程式碼沒有報錯,但是我在頁面上看不到元件。如果我使用第一種導入方式,它可以工作。我漏掉了什麼嗎? </p>
在Vue 3中,你需要使用
defineAsyncComponent
來懶載入元件https://v3-migration.vuejs.org/breaking-changes/async-components.html#overview