elementUI vue table status的状态列颜色变化和操作列状态显示(停用, 启用)

<div id="app" style="display: none">
    ...
    <el-table-column prop="status" label="状态" width="80" align="center">
        <template scope="scope">
            <span v-if="scope.row.status==0" style="color:red;">停用</span>
            <span v-if="scope.row.status==1" style="color:green;">启用</span>
        </template>
    </el-table-column>
    ...
    <el-table-column label="操作" width="150" fixed="right" align="center">
        <template scope="scope">
           <el-button type="text" size="mini" @click="blockUp(scope.row)" v-if="scope.row.status=1">停用</el-button>
           <el-button type="text" size="mini" @click="startUsing(scope.row)" v-if="scope.row.status=0">启用</el-button>
        </template>
    </el-table-column>
    ...
</div>

 


更多专业前端知识,请上 【猿2048】www.mk2048.com
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以在表格的定义中,使用 `scoped slot` 来自定义操作栏的内容,然后根据当前用户的角色和状态来决定按钮的显示和隐藏。 例如,假设你有一个名为 `columns` 的数组来定义表格的,其中包含一个名为 `操作` 的,你可以这样定义它: ```javascript columns: [ // 其他定义... { label: '操作', align: 'center', width: 200, scopedSlots: { default: ({ row }) => { const { status, role } = row const canDispose = status === '待处置' && role === '管理员' const canView = status !== '已删除' return ( <div> {canDispose && ( <el-button type="primary" size="small" onClick={() => handleDispose(row)}>处置</el-button> )} {canView && ( <el-button type="text" size="small" onClick={() => handleView(row)}>查看</el-button> )} </div> ) } } } ] ``` 在上面的代码中,我们使用了 `scoped slot` 来自定义操作栏的内容,并根据当前行的状态和角色来决定按钮的显示和隐藏。具体来说,我们定义了两个变量 `canDispose` 和 `canView`,分别表示当前行是否可以进行处置和查看操作。如果可以,就渲染对应的按钮,否则就不渲染。 需要注意的是,这里我们使用了 `JSX` 语法来渲染按钮,因此需要在组件中导入 `Vue` 和 `ElementUI` 的相关组件。另外,我们还定义了两个处理函数 `handleDispose` 和 `handleView`,用于处理用户点击按钮的事件。你需要根据实际情况来实现这些函数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值