<template>
<div>
<el-tabs v-model="activeName" add-icon="custom-icon">
<el-tab-pane label="标签1" name="1">
内容1
<template #label>
<span>标签1</span>
<el-button v-if="showButton" class="custom-button">自定义按钮</el-button>
</template>
</el-tab-pane>
<el-tab-pane label="标签2" name="2">
内容2
<template #label>
<span>标签2</span>
<el-button v-if="showButton" class="custom-button">自定义按钮</el-button>
</template>
</el-tab-pane>
</el-tabs>
<el-button @click="showButton = !showButton" class="custom-button">切换按钮显示</el-button>
</div>
</template>
<script>
export default {
data() {
return {
activeName: '1', // 初始激活的标签页名称
showButton: true // 控制按钮的显示状态
};
}
};
</script>
<style scoped>
.custom-icon::before {
content: "\f067"; /* 自定义图标的字体图标代码 */
font-family: "Font Awesome 5 Free"; /* 字体图标字体家族 */
font-weight: 900; /* 字体图标权重 */
}
.custom-button {
margin-left: 10px; /* 设置按钮与标签的间距 */
/* 其他样式设置 */
}
</style>
在上述示例中,我们在<el-tab-pane>
组件内使用了名为label
的插槽,该插槽允许我们自定义标签的显示内容。在插槽中,我们添加了<span>
元素来显示标签的文本,并在其后添加了自定义按钮。通过使用v-if
指令和showButton
数据属性,我们可以控制按钮的显示和隐藏。同时,我们还为按钮添加了样式来设置与标签的间距。这样,在每个标签后面都会显示一个自定义按钮,其位置紧随标签文本之后。请根据您的实际需求进行相应的调整和修改。