diff --git a/apps/web-antd/src/components/global/button.ts b/apps/web-antd/src/components/global/button.ts new file mode 100644 index 00000000..397fdf61 --- /dev/null +++ b/apps/web-antd/src/components/global/button.ts @@ -0,0 +1,21 @@ +import { defineComponent, h } from 'vue'; + +import { Button } from 'ant-design-vue'; +import buttonProps from 'ant-design-vue/es/button/buttonTypes'; +import { omit } from 'lodash-es'; + +/** + * 表格操作列按钮专用 + */ +export const GhostButton = defineComponent({ + name: 'GhostButton', + props: omit(buttonProps(), ['type', 'ghost', 'size']), + setup(props, { attrs, slots }) { + return () => + h( + Button, + { ...props, ...attrs, type: 'primary', ghost: true, size: 'small' }, + slots, + ); + }, +}); diff --git a/apps/web-antd/src/components/global/index.ts b/apps/web-antd/src/components/global/index.ts index 29d7cf94..ff07852f 100644 --- a/apps/web-antd/src/components/global/index.ts +++ b/apps/web-antd/src/components/global/index.ts @@ -2,9 +2,13 @@ import type { App } from 'vue'; import { Button as AButton } from 'ant-design-vue'; +import { GhostButton } from './button'; + /** * 全局组件注册 */ export function setupGlobalComponent(app: App) { app.use(AButton); + // 表格操作列专用按钮 + app.component('GhostButton', GhostButton); } diff --git a/apps/web-antd/src/views/system/user/index.vue b/apps/web-antd/src/views/system/user/index.vue index 4fa7a2d0..c5bd7926 100644 --- a/apps/web-antd/src/views/system/user/index.vue +++ b/apps/web-antd/src/views/system/user/index.vue @@ -248,29 +248,28 @@ function handleResetPwd(record: Recordable) {