From bd1a9a67e01439ba4a67e639bab1cd0175870fcf Mon Sep 17 00:00:00 2001 From: ZF sun <34314687@qq.com> Date: Tue, 7 Jul 2026 09:12:06 +0800 Subject: [PATCH] =?UTF-8?q?style:=20=E9=87=8D=E6=9E=84=E5=88=86=E7=B1=BB?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E6=A0=B7=E5=BC=8F=EF=BC=8C=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E4=B8=BB=E9=A2=98=E5=8C=96=E9=85=8D=E7=BD=AE=E5=AD=97=E5=8F=B7?= =?UTF-8?q?=E5=92=8C=E6=8C=89=E9=92=AE=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 为分类树和分类项的文字样式替换为CSS变量,支持远端主题配置 2. 重命名AI咨询按钮的类名和样式变量,统一命名规范 3. 为每个主题预设添加分类页专属的样式token,包含字号、按钮背景和文字颜色 --- common/js/style_color.js | 128 +++++++++++++++++++++++++++ components-diy/diy-category-item.vue | 33 +++---- components-diy/diy-category.vue | 4 +- 3 files changed, 147 insertions(+), 18 deletions(-) diff --git a/common/js/style_color.js b/common/js/style_color.js index 56b020f..1d4490b 100644 --- a/common/js/style_color.js +++ b/common/js/style_color.js @@ -65,6 +65,22 @@ export default { hover_nav_text_color: '#000' // 文字颜色: 白色 '#FFFFFF', 黑色: '#000' }, + // ===== DIY 分类页字号 token(全 8 preset 一致, 远端可覆写) ===== + // SCSS 中通过 var(--diy-category-xxx-size, fallback) 引用 + // 字号值带 rpx 单位, uni-app 各端均可正常渲染 + ...{ + diy_category_tree_select_size: '28rpx',// 左侧分类树选中态字号 + diy_category_tree_normal_size: '20rpx',// 左侧分类树未选中态字号 + diy_category_item_title_size: '26rpx',// 分类标题(如"热销推荐") + diy_category_item_goods_title_size:'28rpx',// 商品模式分类标题(比普通标题大 2rpx) + diy_category_item_name_size: '24rpx',// 分类项名称 + diy_category_item_goods_name_size:'28rpx',// 商品名称 + diy_category_item_goods_tag_size: '22rpx',// 商品角标 + diy_category_item_consult_now_size:'26rpx',// 咨询/AI按钮字号 + diy_category_item_consult_now_bg: '#FF4646',// 咨询/AI按钮背景(独立可调) + diy_category_item_consult_now_text: '#FFFFFF',// 咨询/AI按钮文字(独立可调) + }, + // ===== 营销 token(本次统一, 全 8 preset 一致) ===== ...{ // 拼团 @@ -187,6 +203,22 @@ export default { hover_nav_bg_color: '#19C650',//背景色 hover_nav_text_color: '#FFFFFF' }, + + // ===== DIY 分类页字号 token(全 8 preset 一致, 远端可覆写) ===== + // SCSS 中通过 var(--diy-category-xxx-size, fallback) 引用 + // 字号值带 rpx 单位, uni-app 各端均可正常渲染 + ...{ + diy_category_tree_select_size: '28rpx',// 左侧分类树选中态字号 + diy_category_tree_normal_size: '20rpx',// 左侧分类树未选中态字号 + diy_category_item_title_size: '26rpx',// 分类标题(如"热销推荐") + diy_category_item_goods_title_size:'28rpx',// 商品模式分类标题(比普通标题大 2rpx) + diy_category_item_name_size: '24rpx',// 分类项名称 + diy_category_item_goods_name_size:'28rpx',// 商品名称 + diy_category_item_goods_tag_size: '22rpx',// 商品角标 + diy_category_item_consult_now_size:'26rpx',// 咨询/AI按钮字号 + diy_category_item_consult_now_bg: '#19C650',// 咨询/AI按钮背景(独立可调) + diy_category_item_consult_now_text: '#FFFFFF',// 咨询/AI按钮文字(独立可调) + }, // ===== 营销 token(本次统一, 全 9 preset 一致) ===== ...{ // 拼团 @@ -309,6 +341,22 @@ export default { hover_nav_bg_color: '#36ABFF',//背景色 hover_nav_text_color: '#FFFFFF' }, + + // ===== DIY 分类页字号 token(全 8 preset 一致, 远端可覆写) ===== + // SCSS 中通过 var(--diy-category-xxx-size, fallback) 引用 + // 字号值带 rpx 单位, uni-app 各端均可正常渲染 + ...{ + diy_category_tree_select_size: '28rpx',// 左侧分类树选中态字号 + diy_category_tree_normal_size: '20rpx',// 左侧分类树未选中态字号 + diy_category_item_title_size: '26rpx',// 分类标题(如"热销推荐") + diy_category_item_goods_title_size:'28rpx',// 商品模式分类标题(比普通标题大 2rpx) + diy_category_item_name_size: '24rpx',// 分类项名称 + diy_category_item_goods_name_size:'28rpx',// 商品名称 + diy_category_item_goods_tag_size: '22rpx',// 商品角标 + diy_category_item_consult_now_size:'26rpx',// 咨询/AI按钮字号 + diy_category_item_consult_now_bg: '#36ABFF',// 咨询/AI按钮背景(独立可调) + diy_category_item_consult_now_text: '#FFFFFF',// 咨询/AI按钮文字(独立可调) + }, // ===== 营销 token(本次统一, 全 9 preset 一致) ===== ...{ // 拼团 @@ -431,6 +479,22 @@ export default { hover_nav_bg_color: '#FF407E',//背景色 hover_nav_text_color: '#FFFFFF' }, + + // ===== DIY 分类页字号 token(全 8 preset 一致, 远端可覆写) ===== + // SCSS 中通过 var(--diy-category-xxx-size, fallback) 引用 + // 字号值带 rpx 单位, uni-app 各端均可正常渲染 + ...{ + diy_category_tree_select_size: '28rpx',// 左侧分类树选中态字号 + diy_category_tree_normal_size: '20rpx',// 左侧分类树未选中态字号 + diy_category_item_title_size: '26rpx',// 分类标题(如"热销推荐") + diy_category_item_goods_title_size:'28rpx',// 商品模式分类标题(比普通标题大 2rpx) + diy_category_item_name_size: '24rpx',// 分类项名称 + diy_category_item_goods_name_size:'28rpx',// 商品名称 + diy_category_item_goods_tag_size: '22rpx',// 商品角标 + diy_category_item_consult_now_size:'26rpx',// 咨询/AI按钮字号 + diy_category_item_consult_now_bg: '#FF407E',// 咨询/AI按钮背景(独立可调) + diy_category_item_consult_now_text: '#FFFFFF',// 咨询/AI按钮文字(独立可调) + }, // ===== 营销 token(本次统一, 全 9 preset 一致) ===== ...{ // 拼团 @@ -553,6 +617,22 @@ export default { hover_nav_bg_color: '#CFAF70',//背景色 hover_nav_text_color: '#FFFFFF' }, + + // ===== DIY 分类页字号 token(全 8 preset 一致, 远端可覆写) ===== + // SCSS 中通过 var(--diy-category-xxx-size, fallback) 引用 + // 字号值带 rpx 单位, uni-app 各端均可正常渲染 + ...{ + diy_category_tree_select_size: '28rpx',// 左侧分类树选中态字号 + diy_category_tree_normal_size: '20rpx',// 左侧分类树未选中态字号 + diy_category_item_title_size: '26rpx',// 分类标题(如"热销推荐") + diy_category_item_goods_title_size:'28rpx',// 商品模式分类标题(比普通标题大 2rpx) + diy_category_item_name_size: '24rpx',// 分类项名称 + diy_category_item_goods_name_size:'28rpx',// 商品名称 + diy_category_item_goods_tag_size: '22rpx',// 商品角标 + diy_category_item_consult_now_size:'26rpx',// 咨询/AI按钮字号 + diy_category_item_consult_now_bg: '#CFAF70',// 咨询/AI按钮背景(独立可调) + diy_category_item_consult_now_text: '#FFFFFF',// 咨询/AI按钮文字(独立可调) + }, // ===== 营销 token(本次统一, 全 9 preset 一致) ===== ...{ // 拼团 @@ -675,6 +755,22 @@ export default { hover_nav_bg_color: '#A253FF',//背景色 hover_nav_text_color: '#FFFFFF' }, + + // ===== DIY 分类页字号 token(全 8 preset 一致, 远端可覆写) ===== + // SCSS 中通过 var(--diy-category-xxx-size, fallback) 引用 + // 字号值带 rpx 单位, uni-app 各端均可正常渲染 + ...{ + diy_category_tree_select_size: '28rpx',// 左侧分类树选中态字号 + diy_category_tree_normal_size: '20rpx',// 左侧分类树未选中态字号 + diy_category_item_title_size: '26rpx',// 分类标题(如"热销推荐") + diy_category_item_goods_title_size:'28rpx',// 商品模式分类标题(比普通标题大 2rpx) + diy_category_item_name_size: '24rpx',// 分类项名称 + diy_category_item_goods_name_size:'28rpx',// 商品名称 + diy_category_item_goods_tag_size: '22rpx',// 商品角标 + diy_category_item_consult_now_size:'26rpx',// 咨询/AI按钮字号 + diy_category_item_consult_now_bg: '#A253FF',// 咨询/AI按钮背景(独立可调) + diy_category_item_consult_now_text: '#FFFFFF',// 咨询/AI按钮文字(独立可调) + }, // ===== 营销 token(本次统一, 全 9 preset 一致) ===== ...{ // 拼团 @@ -797,6 +893,22 @@ export default { hover_nav_bg_color: '#FFD009',//背景色 hover_nav_text_color: '#303133' }, + + // ===== DIY 分类页字号 token(全 8 preset 一致, 远端可覆写) ===== + // SCSS 中通过 var(--diy-category-xxx-size, fallback) 引用 + // 字号值带 rpx 单位, uni-app 各端均可正常渲染 + ...{ + diy_category_tree_select_size: '28rpx',// 左侧分类树选中态字号 + diy_category_tree_normal_size: '20rpx',// 左侧分类树未选中态字号 + diy_category_item_title_size: '26rpx',// 分类标题(如"热销推荐") + diy_category_item_goods_title_size:'28rpx',// 商品模式分类标题(比普通标题大 2rpx) + diy_category_item_name_size: '24rpx',// 分类项名称 + diy_category_item_goods_name_size:'28rpx',// 商品名称 + diy_category_item_goods_tag_size: '22rpx',// 商品角标 + diy_category_item_consult_now_size:'26rpx',// 咨询/AI按钮字号 + diy_category_item_consult_now_bg: '#FFD009',// 咨询/AI按钮背景(独立可调) + diy_category_item_consult_now_text: '#303133',// 咨询/AI按钮文字(独立可调) + }, // ===== 营销 token(本次统一, 全 9 preset 一致) ===== ...{ // 拼团 @@ -919,6 +1031,22 @@ export default { hover_nav_bg_color: '#222222',//背景色 hover_nav_text_color: '#FFFFFF' }, + + // ===== DIY 分类页字号 token(全 8 preset 一致, 远端可覆写) ===== + // SCSS 中通过 var(--diy-category-xxx-size, fallback) 引用 + // 字号值带 rpx 单位, uni-app 各端均可正常渲染 + ...{ + diy_category_tree_select_size: '28rpx',// 左侧分类树选中态字号 + diy_category_tree_normal_size: '20rpx',// 左侧分类树未选中态字号 + diy_category_item_title_size: '26rpx',// 分类标题(如"热销推荐") + diy_category_item_goods_title_size:'28rpx',// 商品模式分类标题(比普通标题大 2rpx) + diy_category_item_name_size: '24rpx',// 分类项名称 + diy_category_item_goods_name_size:'28rpx',// 商品名称 + diy_category_item_goods_tag_size: '22rpx',// 商品角标 + diy_category_item_consult_now_size:'26rpx',// 咨询/AI按钮字号 + diy_category_item_consult_now_bg: '#222222',// 咨询/AI按钮背景(独立可调) + diy_category_item_consult_now_text: '#FFFFFF',// 咨询/AI按钮文字(独立可调) + }, // ===== 营销 token(本次统一, 全 9 preset 一致) ===== ...{ // 拼团 diff --git a/components-diy/diy-category-item.vue b/components-diy/diy-category-item.vue index f6aa324..d15ec46 100644 --- a/components-diy/diy-category-item.vue +++ b/components-diy/diy-category-item.vue @@ -72,7 +72,7 @@ @scrolltolower="scrolltolower" @touchstart="touchstart" @touchend="touchend" @scroll="listenScroll"> - {{ category.category_name + {{ category.category_name }} @@ -117,8 +117,8 @@ {{ showMarketPrice(item) }} - - + + {{ $lang('components-diy.diy-category-item.consultNow') }} @@ -211,8 +211,8 @@ {{ showMarketPrice(item) }} - - + + {{ $lang('components-diy.diy-category-item.consultNow') }} @@ -767,7 +767,7 @@ export default { .category-title { padding: 20rpx 0; - font-size: 26rpx; + font-size: var(--diy-category-item-title-size, 26rpx); // font-weight: bold; color: #222; position: relative; @@ -845,7 +845,7 @@ export default { text-align: center; line-height: 1; - font-size: 24rpx; + font-size: var(--diy-category-item-name-size, 24rpx); } } } @@ -895,7 +895,7 @@ export default { border-bottom-right-radius: $border-radius; top: 0; left: 0; - font-size: $font-size-goods-tag; + font-size: var(--diy-category-item-goods-tag-size, 22rpx); } .goods-tag-img { @@ -922,7 +922,7 @@ export default { } .goods-name { - font-size: $font-size-base; + font-size: var(--diy-category-item-goods-name-size, 28rpx); line-height: 1.3; margin-top: 20rpx; white-space: nowrap; @@ -1402,21 +1402,22 @@ export default { } } -.ai-chat-btn-wrap { +.consult-now-btn-wrap { display: flex; justify-content: flex-end; margin-top: auto; padding-top: 10rpx; } -.ai-chat-btn { - // P0: 角标红 → var(--goods-cart-num-corner) - // 兼容: 微信小程序 / 鸿蒙元服务 — background-color 接受 var() 无问题 - background-color: var(--goods-cart-num-corner, #ff0000); - color: #fff; +.consult-now-btn { + // 兼容: 微信小程序 / 鸿蒙元服务 — background-color / color 接受 var() 无问题 + // 三个属性都用 --diy-category-item-consult-now-* 独立 token, + // 便于后台单独调整(不复用全局 --goods-btn-color 和 --btn-text-color) + background-color: var(--diy-category-item-consult-now-bg, #FF4646); + color: var(--diy-category-item-consult-now-text, #FFFFFF); padding: 12rpx 30rpx; border-radius: 40rpx; - font-size: 26rpx; + font-size: var(--diy-category-item-consult-now-size, 26rpx); font-weight: 500; line-height: 1.2; text-align: center; diff --git a/components-diy/diy-category.vue b/components-diy/diy-category.vue index f054c4b..e6e01ce 100644 --- a/components-diy/diy-category.vue +++ b/components-diy/diy-category.vue @@ -622,7 +622,7 @@ export default { white-space: break-word; overflow: hidden; text-align: center; - font-size: 10px; + font-size: var(--diy-category-tree-normal-size, 20rpx); } &.border-top { @@ -639,7 +639,7 @@ export default { view { color: #333; font-weight: bold; - font-size: $font-size-base; + font-size: var(--diy-category-tree-select-size, 28rpx); } &::before {