Skip to content

OperationColumn 操作列

自动生成编辑、删除等操作按钮,支持权限控制。

基础用法

vue
<template>
  <el-table-column label="操作" width="200">
    <template #default="{ row }">
      <OperationColumn :buttons="buttons" :row="row" @click="handleClick" />
    </template>
  </el-table-column>
</template>

<script setup lang="ts">
const buttons = [
  { name: 'edit', text: '编辑', type: 'primary' },
  { name: 'delete', text: '删除', type: 'danger' }
]

function handleClick(name: string, row: any) {
  if (name === 'edit') {
    // 编辑操作
  } else if (name === 'delete') {
    // 删除操作
  }
}
</script>

带权限控制

vue
<script setup lang="ts">
const buttons = [
  { name: 'edit', text: '编辑', type: 'primary', perm: 'sys:user:update' },
  { name: 'delete', text: '删除', type: 'danger', perm: 'sys:user:delete' }
]
</script>

Props

参数说明类型默认值
buttons按钮配置数组Button[][]
row当前行数据object

Button 配置

参数说明类型
name按钮标识string
text按钮文本string
type按钮类型primary / success / warning / danger / info
icon按钮图标string
perm权限标识string
show显示条件(row) => boolean

Events

事件名说明回调参数
click按钮点击时触发(name: string, row: any)

基于 MIT 许可发布 · 如需部署协助或二开定制,请查看 支持与合作