vue3项目中组件切换不起作用

以下这种方式写页面中组件切换,不起作用。

javascript 复制代码
<component :is="steps[compIndex].comp" />

解决:使用shallowReactive或者shallowRef把对应的组件名称重新定义下。

javascript 复制代码
<component :is="compNames[steps[compIndex].comp]" />
<el-button v-for="(item,index) in boxes" @click="compIndex = index">点击切换组件</el-button>

<script setup lang="ts">
import comp1 from './components/comp1.vue'
import comp2 from './components/comp2.vue'
const boxes = [{title:'标题1',comp:'comp1'},{title:'标题2',comp:'comp2'}]

const compIndex = ref(0)
type compName = {
    [key:string]:any
}
const compNames = shallowReactive<compName>({comp1,comp2})
</script>

不清楚还有没有其它解决办法,暂时就这样吧!

相关推荐
四岁爱上了她16 分钟前
Vue3+Antv X6流程图基本使用
开发语言·javascript·流程图
wang_book1 小时前
uniapp学习(003-1 vue3学习 Part.1)
前端·学习·微信小程序·小程序·uni-app·vue
一一程序1 小时前
uniapp实现图片上下浮动效果
前端·uni-app·动画·animation
安冬的码畜日常1 小时前
【CSS in Depth 2 精译_041】6.4 CSS 中的堆叠上下文与 z-index(上)
前端·css·css3·html5·css定位·z-index·元素堆叠
花开不识君1 小时前
Chrome Cookie最大有效期
前端·chrome
小白求学11 小时前
CSS链接
前端·css
xuelong-ming2 小时前
ElementUI el-tree 树组件 增加辅助线
vue.js·elementui
太阳火神的美丽人生2 小时前
WeChat_DevTools 断点调试方法总结
java·前端·微信
customer082 小时前
【开源免费】基于SpringBoot+Vue.JS新闻推荐系统(JAVA毕业设计)
java·vue.js·spring boot·后端·开源