| <template> |
| <router-view v-slot="{ Component, route }"> |
| <keep-alive :include="['ComponentName']"> |
| <component :is="Component" :key="route.name" /> |
| </keep-alive> |
| </router-view> |
| </template> |
vue3
使用 keep-alive
缓存页面时,如果需要使用 include / exclude
参数,那么就要用到组件名称。如果用 setup
语法糖书写时无法直接获取组件名,此时想要设置组件 name
的话有如下方法:
1. 多写一个script标签,并设置组件名:
| <script> |
| export default { |
| name: "ComponentName", |
| } |
| </script> |
2. 通过插件扩展:
vite-plugin-vue-setup-extend
安装插件:
| yarn add vite-plugin-vue-setup-extend -D |
或
| npm i vite-plugin-vue-setup-extend -D |
使用插件:
先引入
| import { defineConfig, Plugin } from 'vite' |
| import vue from '@vitejs/plugin-vue' |
| import vueSetupExtend from 'vite-plugin-vue-setup-extend' |
| |
| export default defineConfig({ |
| plugins: [vue(), vueSetupExtend()], |
| }) |
然后便可以设置name属性
| <template> |
| <div>hello world {{ a }}</div> |
| </template> |
| <script lang="ts" setup name="ComponentName"> |
| const a = 1 |
| </script> |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程