请你扮演一个资深前端,vue写一个tab切换
时间: 2024-03-06 19:50:12 浏览: 58
好的,这里给您提供一个简单的 Vue Tab 切换组件示例,代码如下:
```html
<template>
<div class="tab-container">
<div class="tab-buttons">
<button v-for="(tab, index) in tabs" :key="index" @click="activeTab = index">{{ tab.title }}</button>
</div>
<div class="tab-content">
<div v-for="(tab, index) in tabs" :key="index" v-show="index === activeTab">{{ tab.content }}</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
activeTab: 0,
tabs: [
{
title: 'Tab 1',
content: 'This is the content of Tab 1.'
},
{
title: 'Tab 2',
content: 'This is the content of Tab 2.'
},
{
title: 'Tab 3',
content: 'This is the content of Tab 3.'
}
]
}
}
}
</script>
<style>
.tab-container {
display: flex;
flex-direction: column;
border: 1px solid #ccc;
border-radius: 4px;
overflow: hidden;
}
.tab-buttons {
display: flex;
justify-content: space-between;
align-items: center;
background-color: #f3f3f3;
padding: 8px;
}
.tab-buttons button {
background-color: transparent;
border: none;
outline: none;
cursor: pointer;
}
.tab-buttons button:hover {
background-color: #e6e6e6;
}
.tab-buttons button.active {
font-weight: bold;
}
.tab-content {
padding: 16px;
}
</style>
```
上述代码中,我们定义了一个 `tabs` 数组,其中包含了三个选项卡,每个选项卡包含 `title` 和 `content` 两个属性。我们使用 `v-for` 指令将选项卡的标题渲染成按钮,并根据 `activeTab` 的值显示相应的选项卡内容。通过 `@click` 事件监听器,我们可以在用户点击按钮时切换选项卡。
这只是一个简单的示例,您可以根据实际需求进行自定义。
阅读全文