From ddbe29a8649b2e7c9ed7e22cbcee21cf4d7b7988 Mon Sep 17 00:00:00 2001
From: MSuMshk <2039814060@qq.com>
Date: Sat, 21 Feb 2026 09:23:35 +0800
Subject: [PATCH] =?UTF-8?q?style:=20=E5=AF=B9=E9=BD=90=E5=8A=A0=E6=96=99?=
=?UTF-8?q?=E6=8A=BD=E5=B1=89=E9=80=89=E9=A1=B9=E5=88=97=E8=A1=A8=E5=8E=9F?=
=?UTF-8?q?=E5=9E=8B=E6=A0=B7=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../addons/components/AddonEditorDrawer.vue | 13 ++--
.../views/product/addons/styles/drawer.less | 59 +++++++++++++++----
2 files changed, 54 insertions(+), 18 deletions(-)
diff --git a/apps/web-antd/src/views/product/addons/components/AddonEditorDrawer.vue b/apps/web-antd/src/views/product/addons/components/AddonEditorDrawer.vue
index 0ce064c..576b461 100644
--- a/apps/web-antd/src/views/product/addons/components/AddonEditorDrawer.vue
+++ b/apps/web-antd/src/views/product/addons/components/AddonEditorDrawer.vue
@@ -8,6 +8,8 @@ import type { AddonEditorForm } from '../types';
import { onBeforeUnmount, watch } from 'vue';
+import { IconifyIcon } from '@vben/icons';
+
const props = defineProps<{
form: AddonEditorForm;
open: boolean;
@@ -70,7 +72,7 @@ onBeforeUnmount(() => {
{{ title }}
@@ -157,14 +159,14 @@ onBeforeUnmount(() => {
@@ -218,7 +220,8 @@ onBeforeUnmount(() => {
class="g-btn pad-btn-dashed"
@click="emit('addItem')"
>
- + 添加选项
+
+ 添加选项
diff --git a/apps/web-antd/src/views/product/addons/styles/drawer.less b/apps/web-antd/src/views/product/addons/styles/drawer.less
index 2da434e..b0c59b8 100644
--- a/apps/web-antd/src/views/product/addons/styles/drawer.less
+++ b/apps/web-antd/src/views/product/addons/styles/drawer.less
@@ -1,4 +1,9 @@
.pad-editor-drawer {
+ .g-drawer-close .iconify {
+ width: 16px;
+ height: 16px;
+ }
+
.g-form-group {
margin-bottom: 16px;
}
@@ -158,14 +163,14 @@
}
.pad-input-num {
- width: 80px;
+ width: 84px;
}
.pad-opt-list-header {
display: flex;
gap: 8px;
align-items: center;
- margin-bottom: 8px;
+ margin-bottom: 10px;
font-size: 12px;
font-weight: 600;
color: #6b7280;
@@ -177,17 +182,17 @@
.pad-opt-list-header .h-price,
.pad-opt-list-header .h-stock {
- width: 80px;
+ width: 120px;
}
.pad-opt-list-header .h-act {
- width: 34px;
+ width: 30px;
}
.pad-opt-list {
display: flex;
flex-direction: column;
- gap: 10px;
+ gap: 12px;
}
.pad-opt-row {
@@ -196,46 +201,74 @@
align-items: center;
}
+ .pad-opt-row input {
+ height: 34px;
+ padding: 0 12px;
+ font-size: 13px;
+ color: #1a1a2e;
+ outline: none;
+ border: 1px solid #e5e7eb;
+ border-radius: 12px;
+ transition: var(--g-transition);
+ }
+
+ .pad-opt-row input:focus {
+ border-color: #1677ff;
+ box-shadow: 0 0 0 3px rgb(22 119 255 / 12%);
+ }
+
.pad-opt-name {
flex: 1;
}
.pad-opt-price,
.pad-opt-stock {
- width: 80px;
+ width: 120px;
}
.pad-opt-del {
display: inline-flex;
align-items: center;
justify-content: center;
- width: 34px;
- height: 34px;
- font-size: 14px;
+ width: 30px;
+ height: 30px;
color: #9ca3af;
cursor: pointer;
- background: #fff;
- border: 1px solid #e5e7eb;
+ background: none;
+ border: none;
border-radius: 8px;
- transition: all 0.2s ease;
+ transition: var(--g-transition);
+ }
+
+ .pad-opt-del .iconify {
+ width: 15px;
+ height: 15px;
}
.pad-opt-del:hover {
color: #ef4444;
background: #fef2f2;
- border-color: #ef4444;
}
.pad-btn-dashed {
+ gap: 8px;
justify-content: center;
width: 100%;
margin-top: 8px;
+ box-shadow: none;
color: #9ca3af;
border-style: dashed;
+ border-color: #d1d5db;
+ }
+
+ .pad-btn-dashed .iconify {
+ width: 14px;
+ height: 14px;
}
.pad-btn-dashed:hover {
color: #1677ff;
border-color: #1677ff;
+ box-shadow: none;
}
}