vue3+jsx怎么通过标志动态控制组件不同内容渲染
时间: 2024-09-25 14:07:57 浏览: 27
vue3-jsx-study:vue3 + jsx的一些示例
在Vue 3中结合使用jsx,你可以通过条件渲染(Conditional Rendering)来动态控制组件的内容。如果你有一个标志变量,比如`isShowContentA`或`isShowContentB`,你可以这样做:
```jsx
<template>
<div>
{isShowContentA ? (
<ComponentA />
) : isShowContentB ? (
<ComponentB />
) : null}
</div>
</template>
<script setup>
import ComponentA from '@/components/ComponentA.vue';
import ComponentB from '@/components/ComponentB.vue';
// 假设你有如下的标志变量
const showContent = computed({
get() {
return this.$store.state.showContentType === 'typeA' ? ComponentA : ComponentB;
},
});
</script>
<style scoped></style>
```
在这个例子中,`ComponentA`会在`isShowContentA`为真时渲染,`ComponentB`会在`isShowContentB`为真时渲染,如果两者都不满足,则不显示任何内容。
阅读全文