refactor(PageContent): ♻️ 默认工具栏支持自定义

This commit is contained in:
cshaptx4869
2024-06-08 13:56:09 +08:00
parent 51e88cdf7d
commit f23cc6c6fe

View File

@@ -57,6 +57,7 @@
<!-- 右侧工具栏 -->
<div>
<template v-for="item in defaultToolbar" :key="item">
<template v-if="typeof item === 'string'">
<!-- 刷新 -->
<template v-if="item === 'refresh'">
<el-button
@@ -104,6 +105,27 @@
/>
</template>
</template>
<!-- 其他 -->
<template v-else-if="typeof item === 'object'">
<template v-if="item.auth">
<el-button
:icon="item.icon"
circle
:title="item.text"
v-hasPerm="[`${contentConfig.pageName}:${item.auth}`]"
@click="handleToolbar(item.name)"
/>
</template>
<template v-else>
<el-button
:icon="item.icon"
circle
:title="item.title"
@click="handleToolbar(item.name)"
/>
</template>
</template>
</template>
</div>
</div>
<!-- 列表 -->
@@ -447,7 +469,18 @@ export interface IContentConfig<T = any> {
}
>;
// 表格工具栏右侧图标
defaultToolbar?: ("refresh" | "filter" | "exports" | "search")[];
defaultToolbar?: Array<
| "refresh"
| "filter"
| "exports"
| "search"
| {
name: string;
icon: string;
title?: string;
auth?: string;
}
>;
// table组件列属性(额外的属性templet,operat,slotName)
cols: Array<{
type?: "default" | "selection" | "index" | "expand";