这是一个标签组件 <template> <SeptTabs :data="data" v-model="current"></SeptTabs> </template> <script> export default { data() { return { data:[ { icon: "application2", label: "标签1", code:'1' }, { label: "标签2", code:'2' }, ], current: 0,}}} </script> (事件名:exe-change ,说明:激活的标签改变时触发,返回当前被激活的标签内容,返回值:被选中项的数据) code是唯一标识 请问 我该怎么做才能点击不同的标签后 显示不同标签的内容
时间: 2024-02-10 18:12:12 浏览: 172
vue 2.0组件与v-model详解
你可以在`exe-change`事件中获取当前选中的标签数据,然后根据这个数据来切换显示不同的标签内容。具体而言,你可以在模板中使用`v-if`或`v-show`指令来根据当前激活的标签来显示不同的内容。
例如:
```
<template>
<div>
<SeptTabs :data="data" v-model="current" @exe-change="handleTabChange"></SeptTabs>
<div v-if="currentTab.code === '1'">
<!-- 标签1对应的内容 -->
</div>
<div v-if="currentTab.code === '2'">
<!-- 标签2对应的内容 -->
</div>
</div>
</template>
<script>
export default {
data() {
return {
data: [
{
icon: "application2",
label: "标签1",
code: "1",
},
{
label: "标签2",
code: "2",
},
],
current: 0,
currentTab: null,
};
},
methods: {
handleTabChange(tab) {
this.currentTab = tab;
},
},
};
</script>
```
在上面的代码中,我们定义了两个内容区域,分别对应标签1和标签2。在`handleTabChange`方法中,我们将选中的标签数据保存到`currentTab`属性中,并在模板中使用`v-if`指令根据`currentTab.code`来判断显示哪个内容区域。这样,当用户点击不同的标签时,就会切换到对应的内容区域。
阅读全文