From d0d62ab0af47b395cd57070b507b93c3e61ea792 Mon Sep 17 00:00:00 2001 From: guanj Date: Tue, 14 Jul 2026 14:39:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8F=9C=E5=8D=95=E6=A0=91?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E5=B1=95=E5=BC=80=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/icon/index.vue | 4 +- src/components/icon/svg/index.vue | 98 +++++++++---------- src/components/table/defaultAttribute.ts | 7 +- src/styles/vxeTable.scss | 19 ++-- .../area/harmonicDistortionRate/index.vue | 4 +- src/views/setting/dictionary/tree/index.vue | 26 +++-- src/views/system/auth/department/index.vue | 13 ++- src/views/system/auth/menu/menu.vue | 7 +- 8 files changed, 99 insertions(+), 79 deletions(-) diff --git a/src/components/icon/index.vue b/src/components/icon/index.vue index 71495f25..44599145 100644 --- a/src/components/icon/index.vue +++ b/src/components/icon/index.vue @@ -10,7 +10,7 @@ export default defineComponent({ required: true }, size: { - type: String, + type: [String, Number], default: '18px' }, color: { @@ -21,7 +21,7 @@ export default defineComponent({ setup(props) { const iconStyle = computed((): CSSProperties => { const { size, color } = props - let s = `${size.replace('px', '')}px` + const s = `${String(size).replace('px', '')}px` return { fontSize: s, color: color diff --git a/src/components/icon/svg/index.vue b/src/components/icon/svg/index.vue index 675d62df..b0947865 100644 --- a/src/components/icon/svg/index.vue +++ b/src/components/icon/svg/index.vue @@ -1,49 +1,49 @@ - - - - - + + + + + diff --git a/src/components/table/defaultAttribute.ts b/src/components/table/defaultAttribute.ts index a03ab97c..452f416b 100644 --- a/src/components/table/defaultAttribute.ts +++ b/src/components/table/defaultAttribute.ts @@ -7,10 +7,11 @@ export const defaultAttribute: VxeTableProps = { stripe: true, size: 'small', columnConfig: { resizable: true, useKey: true }, - rowConfig: { isCurrent: true, isHover: true }, + rowConfig: { isCurrent: true, isHover: true, keyField: 'id' }, scrollX: { scrollToLeftOnChange: true }, - scrollY: { scrollToTopOnChange: true, enabled: true, gt: 100 }, - customConfig: { enabled: true, allowFixed: false, showFooter: false, immediate: true ,mode:'default'}, + scrollY: { enabled: false }, + // 注意:全局不要默认开启 treeConfig,会与 stripe 冲突;树表在页面自行配置 + customConfig: { enabled: true, allowFixed: false, showFooter: false, immediate: true, mode: 'default' }, showOverflow: 'tooltip', showHeaderOverflow: false } diff --git a/src/styles/vxeTable.scss b/src/styles/vxeTable.scss index fded04bc..e1236ad3 100644 --- a/src/styles/vxeTable.scss +++ b/src/styles/vxeTable.scss @@ -81,14 +81,17 @@ .vxe-modal--wrapper { z-index: 5000 !important; } -// .vxe-table--body .vxe-body--row:nth-child(even) { -// background-color: #f9f9f9; -// // background-color: var(--el-color-primary-light-9); -// } - -// .vxe-table--body .vxe-body--row:nth-child(odd) { -// background-color: #ffffff; -// } +/* 斑马纹:新版 vxe 背景画在 column 上,默认条纹色 #fafafa 几乎看不见 */ +:root { + --vxe-ui-table-row-striped-background-color: #fafafa; + --vxe-ui-table-row-hover-striped-background-color: #eef1f6; +} +.vxe-table--render-default .vxe-body--row.row--stripe > .vxe-body--column { + background-color: var(--vxe-ui-table-row-striped-background-color); +} +.vxe-table--render-default .vxe-body--row.row--hover.row--stripe > .vxe-body--column { + background-color: var(--vxe-ui-table-row-hover-striped-background-color); +} .default-theme.splitpanes--vertical > .splitpanes__splitter, .default-theme .splitpanes--vertical > .splitpanes__splitter { width: 10px !important; diff --git a/src/views/pqs/harmonicMonitoring/area/harmonicDistortionRate/index.vue b/src/views/pqs/harmonicMonitoring/area/harmonicDistortionRate/index.vue index 6654c879..f7804040 100644 --- a/src/views/pqs/harmonicMonitoring/area/harmonicDistortionRate/index.vue +++ b/src/views/pqs/harmonicMonitoring/area/harmonicDistortionRate/index.vue @@ -1,7 +1,7 @@