Vue — el-table部分表头加红* 提示必填

效果图:

PS:只是样式上加红*提示必填 

第一种方法:

【控制台会提示警告:Comparing to render-header, scoped-slot header is easier to use. We recommend users to use scoped-slot header.】

我的表头是循环出来的  在el-table-column上添加render-header属性

               <el-table-column
                    :render-header="addRedStar"
                    v-for="item in tableHeaders"
                    :label="item.label"
                    :key="item.label"
                >

methods中去写方法

      // 表头必填项标识
      addRedStar(h, { column }) {
        if(column.label === "岗位" || column.label === "考核成绩"){
          // 不需要加红*的表头
          return [
            h('span', ' ' + column.label)
          ];
        } else {
          // 需要加红*的表头
          return [
            h('span', { style: 'color: #F56C6C' }, '*'),
            h('span', ' ' + column.label) 
          ];
        }
      },

第二种方法:

听劝决定使用 scoped-slot header 

 <el-table-column
    v-for="item in tableHeaders"
    :label="item.label"
    :key="item.label"
    scoped-slot
 >
   <template slot="header">
     <div>
       <span class="red_star" v-if="item.label !== '岗位' && item.label !== '考核成绩'">*                        
       </span>
       {{item.label}}
      </div>
   </template>
   <template slot-scope="scope"> ....后续的代码

css 样式:

.red_star {
  color: #ff3b30;
  vertical-align: middle; 
}

控制台没警告了也很简单

  • 7
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值