element-plus的tab组件如何禁止点击。并且给禁止点击的加上置灰的样式

复制代码
<el-tabs v-model="tabMenu" class="tabs-menu" :before-leave="tabChange">
  <el-tab-pane v-for="item in nemuList" :key="item.id" :label="item.name" :name="item.id" >
    <template #label>
      <div :class="delay==item.id?'disabled':'able'">{{item.name}}</div>
    </template>
    <component :is="item.component" :my-detail="detail" ></component>
  </el-tab-pane>
</el-tabs>

label要写在插槽里。这样方便单独为某一个tab加样式

复制代码
const nemuList = shallowRef([{ name: '申请', id: 0, component: Apply }, { name: '资料审核', id: 1, component: DataReview }, { name: '初评', id: 2, component: InitReview }, { name: '复评', id: 3, component: FinalReview } ]);
const tabMenu = ref(0);
const delay=ref([2,3]);//禁止点击的tab
复制代码
const tabChange = (activeName,oldActiveName) => {
  tabMenu.value=activeName;
  if(delay.value==tabMenu.value){
    console.log("禁止点击")
    return false;
  }
}

给禁止点击的tab添加上样式就行啦

复制代码
.disabled{
  color:#bdbbbb;
}
相关推荐
前端御书房2 小时前
前端PDF转图片技术调研实战指南:从踩坑到高可用方案的深度解析
前端·javascript
程序员黄同学3 小时前
请谈谈 Vue 中的响应式原理,如何实现?
前端·javascript·vue.js
宁波阿成5 小时前
vue3里组件的v-model:value与v-model的区别
前端·javascript·vue.js
柯腾啊5 小时前
VSCode 中使用 Snippets 设置常用代码块
开发语言·前端·javascript·ide·vscode·编辑器·代码片段
Jay丶萧邦5 小时前
el-select:有关多选,options选项值不包含绑定值的回显问题
javascript·vue.js·elementui
pixle05 小时前
Three.js 快速入门教程【一】开启你的 3D Web 开发之旅
前端·javascript·3d
我爱学习_zwj6 小时前
后台管理系统-月卡管理
javascript·vue.js·elementui
录大大i6 小时前
HtML之JavaScript BOM编程
前端·javascript·html
customer087 小时前
【开源免费】基于SpringBoot+Vue.JS个人博客系统(JAVA毕业设计)
java·vue.js·spring boot·后端·开源
乐多_L7 小时前
使用vue3框架vue-next-admin导出表格excel(带图片)
前端·javascript·vue.js