如何禁止element-ui 标签页组件的点击事件?

项目中也许会有这种需求:element-ui 标签页组件只能通过代码切换,不能通过点击切换tab!

自己尝试了元素 js  获取元素后再清除绑定事件,失败。。。获取元素为 null

网上找了一大堆,也许你会发现这样的答案:

加上一个标志位来控制点击事件是否能触发。但是这仅仅只是限制点击事件是否有效。


      tab组件中 Tab-pane Attributes 中 disabled  属性可以禁用 tab  切换,所以,给Tab-pane Attributes 加上disabled  属性,直接禁用其点击功能。但是,你会发现,整个样式置灰,奇丑无比,给用户一种不可用的状态。而我要的样式不变,active  的时候tab 导航 仍然高亮。

下面写一下我的处理结果,其实就是障眼法。

我们检查一下 active 且 disabled  状态下的tab元素,会发现    class="el-tabs__item  is-active is-disabled" 。

不难发现 is-active 样式仍然在,只是被 is-disabled 覆盖了,那么我们要做的仅是按需求重置样式即可

      .el-tabs__item.is-disabled {
        color: #303133; 
        cursor:default
      }
      .el-tabs__item.is-active {
        color: #409EFF;
      }

为了避免此处特殊处理样式覆盖掉全局的其他样式,请参照  element-ui样式不能被修改?修改element样式问题   自行添加一个父级class

你可能感兴趣的:(vue)