学习如何在Vue 3中实现动态组件导入
P粉253800312
P粉253800312 2023-08-24 16:00:23
0
1
657
<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>
P粉253800312
P粉253800312

全部回复(1)
P粉970736384

在Vue 3中,你需要使用defineAsyncComponent来懒加载组件

import { defineAsyncComponent } from 'vue'
...
    components: {
        LatestBox: defineAsyncComponent(() => import('@/components/LatestBox.vue'))
    }

https://v3-migration.vuejs.org/breaking-changes/async-components.html#overview

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板