vue3 el-tabs延迟加载
时间: 2023-07-28 11:42:18 浏览: 393
手动动态改变el-tabs标签页顺序
为了实现Vue3 el-tabs的延迟加载,可以使用Vue3的异步组件和el-tabs的lazy属性。具体步骤如下:
1. 将el-tabs的type属性设置为"lazy",这样el-tabs组件会自动懒加载。
2. 创建一个异步组件,用于渲染el-tabs的内容。例如:
```
const TabContent = defineAsyncComponent(() => import('./TabContent.vue'))
```
3. 在el-tabs的tab-pane中使用异步组件,例如:
```
<el-tab-pane v-for="(item, index) in tabs" :key="index" :label="item.label">
<template v-if="item.lazy">
<TabContent />
</template>
<template v-else>
<div v-html="item.content"></div>
</template>
</el-tab-pane>
```
这样就可以实现el-tabs的延迟加载了。注意,异步组件只会在第一次被访问时加载。如果需要在每次切换tab时都重新加载内容,可以在TabContent组件中使用activated生命周期钩子重新加载数据。
阅读全文