From fcb33a7163b7da00e53122c4a1b3afed161dc8c8 Mon Sep 17 00:00:00 2001 From: "1054425342@qq.com" <1054425342@qq.com> Date: Wed, 13 Aug 2025 17:58:47 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/index.js | 1 - components/DynamicIsland.vue | 2 +- static/js/CommonFunction.js | 4 +- subPackages/memorialAlbum/index.vue | 65 ++-- subPackages/orderQy/detail.vue | 562 ++++++++++++++++------------ subPackages/orderQy/list.vue | 229 +++++------- 6 files changed, 450 insertions(+), 413 deletions(-) diff --git a/common/index.js b/common/index.js index 3c6081f..dbbc129 100644 --- a/common/index.js +++ b/common/index.js @@ -24,7 +24,6 @@ async function getLocationInfo() { qqmapsdk.reverseGeocoder({ location, success(response) { - console.log(response) let info = response.result; let _c = info.ad_info.adcode.slice(0,3) location.cityId = info.ad_info.city_code.slice(3); diff --git a/components/DynamicIsland.vue b/components/DynamicIsland.vue index 35ae38a..95ffc62 100644 --- a/components/DynamicIsland.vue +++ b/components/DynamicIsland.vue @@ -329,7 +329,7 @@ export default { uni.navigateTo({ url: "/subPackages/webPage/webPage?url=" + - "https://www.dayunyuanjian.cn/dist/#/chat-demo", + "https://des.js-dyyj.com/dist/#/", }); }, }, diff --git a/static/js/CommonFunction.js b/static/js/CommonFunction.js index e5dd4b1..3dce24e 100644 --- a/static/js/CommonFunction.js +++ b/static/js/CommonFunction.js @@ -391,4 +391,6 @@ Vue.prototype.appendToStorage = (key, newData) => { const existing = uni.getStorageSync(key) || {}; const updated = { ...existing, ...newData }; uni.setStorageSync(key, updated); -} \ No newline at end of file +} + +Vue.prototype.JDSU_IMG_URL = "https://static.ticket.sz-trip.com" \ No newline at end of file diff --git a/subPackages/memorialAlbum/index.vue b/subPackages/memorialAlbum/index.vue index af4cb92..f71cdef 100644 --- a/subPackages/memorialAlbum/index.vue +++ b/subPackages/memorialAlbum/index.vue @@ -10,14 +10,14 @@ > - {{ item.title }} + {{ item.goodsTitle }} {{ item.code }} - {{ item.status }} + {{ item.ownPart }} @@ -31,43 +31,31 @@ export default { data() { return { memorialItems: [ - { - id: 1, - title: "香在苏州|世界美食之都", - code: "#001-0050/1000", - status: "XXX博物馆", - image: "/uploads/20250729/42fe2364167c2342076c4e094df3d288.png", - }, - { - id: 2, - title: "香在苏州|世界美食之都", - code: "#001-0050/1000", - status: "XXX博物馆", - image: "/uploads/20250729/105755e9b2e570e46b96d54ed61abe51.png", - }, - { - id: 3, - title: "香在苏州|世界美食之都", - code: "#001-0050/1000", - status: "XXX博物馆", - image: "/uploads/20250729/105755e9b2e570e46b96d54ed61abe51.png", - }, - { - id: 4, - title: "香在苏州|世界美食之都", - code: "#001-0050/1000", - status: "XXX博物馆", - image: "/uploads/20250729/42fe2364167c2342076c4e094df3d288.png", - }, + ], }; }, + onLoad() { + this.getList() + }, methods: { - // 返回上一页 - goBack() { - uni.navigateBack(); - }, - +getList(){ + this.Post( + { + }, + "/framework/order/ipOrderList", + "DES" + ).then((res) => { + if (res.code == 200) { + this.memorialItems = res.data + } else { + uni.showToast({ + title: res.msg, + icon: "none", + }); + } + }); +}, // 跳转到详情页面 goToDetail(item) { uni.navigateTo({ @@ -195,6 +183,11 @@ export default { .memorial-status { font-size: 24rpx; color: #999; + overflow: hidden; + display: -webkit-box; + -webkit-line-clamp: 1; + -webkit-box-orient: vertical; + overflow: hidden; } // 响应式处理 diff --git a/subPackages/orderQy/detail.vue b/subPackages/orderQy/detail.vue index 2454f60..f6d980f 100644 --- a/subPackages/orderQy/detail.vue +++ b/subPackages/orderQy/detail.vue @@ -7,73 +7,48 @@ 订单详情 - - - - 收货地址: - - - {{ - orderDetail.address.fullAddress - }} - - {{ orderDetail.address.name }} - {{ orderDetail.address.phone }} - - - - - 该订单无需收货地址 - - - - - - - 预约发货时间 - {{ orderDetail.deliveryDate || "--" }} - - - 快递单号 - {{ orderDetail.trackingNo || "--" }} - - - - {{ orderDetail.packageName }} + {{ orderDetail.orderName || "--" }} - {{ goods.name }} - {{ - goods.description || goods.spec - }} - 数量:{{ goods.quantity || 1 }} + {{ goods.goodsTitle || "-" }} + {{ getGoodsTypeName(goods.type) }} + 数量:{{ goods.num || 1 }} + + @@ -82,12 +57,14 @@ 订单金额 - ¥{{ orderDetail.goodsAmount }} + ¥{{ orderDetail.payMoney || "0.00" }} 运费 ¥{{ orderDetail.shippingFee || "5.00" }}¥{{ orderDetail.postMoney || "0.00" }} @@ -98,57 +75,51 @@ 订单信息 订单编号: - {{ orderDetail.orderNo }} + {{ orderDetail.orderId }} - + + 权益码: + {{ orderDetail.activeCode }} + + 物流运费 - {{ orderDetail.shippingFee || "5.00" }} + {{ orderDetail.postMoney || "0.00" }} - + 合计实付 - {{ - orderDetail.totalAmount - }} + {{ orderDetail.payMoney }} - + + 支付时间 - {{ - formatTime(orderDetail.payTime) || formatTime(orderDetail.createTime) - }} + {{ orderDetail.payTime }} - - 预约发货时间 - {{ - orderDetail.deliveryDate || formatTime(orderDetail.createTime) - }} - - + 备注 {{ orderDetail.remark || "XXXX" }} @@ -199,6 +170,82 @@ + + + + + + 物流信息 + × + + + + + 收货地址 + + + + {{ currentLogisticsInfo.province + }}{{ currentLogisticsInfo.city }}{{ currentLogisticsInfo.area + }}{{ currentLogisticsInfo.address }} + + + + {{ + currentLogisticsInfo.linkName + }} + {{ + currentLogisticsInfo.phone + }} + + + + + + + 预约发货时间 + + {{ + currentLogisticsInfo.bookDeliveryTime || "--" + }} + + + + + + 快递信息 + + 快递公司: + {{ + currentLogisticsInfo.expressName || "--" + }} + + + 快递单号: + {{ + currentLogisticsInfo.expressCode || "--" + }} + + + 实际发货时间: + {{ + currentLogisticsInfo.deliveryTime || "--" + }} + + + 发货人: + {{ + currentLogisticsInfo.deliveryUserName || "--" + }} + + + + + @@ -208,34 +255,15 @@ export default { return { orderId: "", showEquityPopup: false, - orderDetail: { - id: "", - orderNo: "", - status: 0, - packageName: "", - goodsList: [], - totalAmount: "0.00", - goodsAmount: "0.00", - discountAmount: "0.00", - shippingFee: "5.00", - points: "", - remark: "", - deliveryDate: "", - trackingNo: "", - shippingTime: "", - createTime: "", - payTime: "", - payMethod: "", - equityCode: "", - qrcode: "", - address: null, - }, + showLogisticsPopup: false, // 物流信息弹窗 + currentLogisticsInfo: null, // 当前物流信息 + orderDetail: {}, }; }, computed: { // 是否有实体商品需要收货 hasPhysicalGoods() { - return this.orderDetail.goodsList.some((goods) => goods.type === 2); + return this.orderDetail.orderChildVos.some((goods) => goods.type === 2); }, // 是否显示底部操作按钮 showBottomActions() { @@ -255,9 +283,16 @@ export default { // 加载订单详情 async loadOrderDetail() { try { - uni.showLoading({ title: "加载中..." }); - const res = await this.getOrderDetail(this.orderId); - this.orderDetail = res.data; + this.Post({}, `/framework/order/${this.orderId}`, "DES").then((res) => { + if (res.code == 200) { + this.orderDetail = res.data; + } else { + uni.showToast({ + title: res.msg, + icon: "none", + }); + } + }); } catch (error) { console.error("加载订单详情失败:", error); uni.showToast({ @@ -270,65 +305,6 @@ export default { }, // 加载假数据 - loadMockData() { - this.orderDetail = { - id: "mock001", - orderNo: "238232342424234423", - status: 2, // 待收货状态 - packageName: "食在扬州|世界美食之都巡礼", - packageId: "pkg001", - totalAmount: "699.00", - goodsAmount: "699.00", - discountAmount: "0.00", - shippingFee: "0.00", - points: "已获得1分", - remark: "XXXX", - deliveryDate: "2025-08-10", - trackingNo: "SF120025020202", - shippingTime: "2025-07-15 01:46:25", - createTime: "2025-07-15 00:46:25", - payTime: "2025-07-15 00:46:25", - payMethod: "线上支付", - equityCode: "EPIC2024010112345", - qrcode: "/static/image/qrcode-sample.png", - goodsList: [ - { - id: 1, - name: "IP数字资产", - type: 1, - description: "在数字资产相册中查看", - price: "99.00", - quantity: 1, - }, - { - id: 2, - name: "IP文创公仔", - type: 2, - description: "这里是XXX相仿介绍介绍", - price: "150.00", - quantity: 1, - }, - { - id: 3, - name: "XXX园叮门票", - type: 3, - description: "这里是XXX园叮门票的介绍介绍介绍", - price: "50.00", - quantity: 1, - }, - ], - address: { - name: "XX先生", - phone: "183****1234", - fullAddress: "江苏省苏州市姑苏区XXXXXX", - province_text: "江苏省", - city_text: "苏州市", - district_text: "姑苏区", - detail_addr: "XXXXXX", - is_default: 1, - }, - }; - }, // 获取状态图标 getStatusIcon(status) { @@ -342,16 +318,16 @@ export default { return iconMap[status] || "/static/icon/status-default.png"; }, - // 获取状态文本 getStatusText(status) { const statusMap = { - 0: "待使用", - 1: "待收货", + 0: "待激活", + 1: "待使用", 2: "待收货", 3: "已完成", - 4: "用户已驳回", + 4: "售后/退款", + "-1": "取消", }; - return statusMap[status] || "未知状态"; + return statusMap[status] || "未知"; }, // 获取状态样式类 @@ -370,11 +346,27 @@ export default { getGoodsActionText(type) { const textMap = { 1: "去查看", - 2: "查看物流", - 3: "已使用", + 2: "预约发货", + 3: "去使用", }; return textMap[type] || "去查看"; }, + getGoodsActionTexted(type) { + const textMap = { + 1: "去查看", + 2: "查看物流", + 3: "已使用", + }; + return textMap[type] || "去查看"; + }, + showImgJdsz(img) { + if (!img) return; + if (img.indexOf("https://") != -1 || img.indexOf("http://") != -1) { + return img; + } else { + return this.JDSU_IMG_URL + img; + } + }, // 获取商品操作按钮样式 getGoodsActionClass(type) { @@ -431,6 +423,79 @@ export default { this.showEquityPopup = false; }, + // 处理商品操作 + handleGoodsAction(goods) { + switch (goods.type) { + case 1: // IP数字资产 - 查看 + this.viewDigitalAsset(goods); + break; + case 2: // IP资源商品 - 预约发货 + this.reserveDelivery(goods); + break; + case 3: // 君道苏州门票 - 去使用 + this.useTicket(goods); + break; + } + }, + + // 查看数字资产 + viewDigitalAsset(goods) { + // 跳转到数字资产详情页面 + uni.showToast({ + title: "查看数字资产", + icon: "none", + }); + uni.navigateTo({ + url: "/subPackages/memorialAlbum/detail", + }); + }, + + // 预约发货 + reserveDelivery(goods) { + // 跳转到确认订单页面 + uni.navigateTo({ + url: `/subPackages/orderQy/confrim?goodsId=${goods.orderId}`, + }); + }, + + // 使用门票 + useTicket(goods) { + // 处理使用门票逻辑 + uni.showToast({ + title: "使用门票", + icon: "none", + }); + }, + + // 显示物流信息 + showLogisticsInfo(goods) { + if (goods.orderExchangeVo) { + this.currentLogisticsInfo = goods.orderExchangeVo; + this.showLogisticsPopup = true; + } else { + uni.showToast({ + title: "暂无物流信息", + icon: "none", + }); + } + }, + + // 关闭物流信息弹窗 + closeLogisticsPopup() { + this.showLogisticsPopup = false; + this.currentLogisticsInfo = null; + }, + + // 查看商品详情 + viewGoodsDetail(goods) { + // 根据商品类型跳转到不同页面 + if (goods.type === 1) { + uni.navigateTo({ + url: `/subPackages/equityGoods/detail?id=${goods.goodsId}`, + }); + } + }, + // 复制权益码 copyEquityCode() { uni.setClipboardData({ @@ -510,87 +575,6 @@ export default { ).padStart(2, "0")}:${String(date.getMinutes()).padStart(2, "0")}`; }, - // API接口 - 获取订单详情 - async getOrderDetail(orderId) { - // 模拟API数据 - 根据订单ID返回不同状态的数据 - return new Promise((resolve) => { - setTimeout(() => { - // 根据订单ID模拟不同的订单状态 - const statusMapping = { - 1: 0, // 待使用 - 2: 1, // 待收货 - 3: 2, // 待收货 - 4: 3, // 已完成 - 5: 4, // 用户已驳回 - }; - - const orderStatus = statusMapping[orderId] || 1; - - const mockData = { - code: 200, - data: { - id: orderId, - orderNo: "238232342424234423", - status: orderStatus, - packageName: "食在扬州|世界美食之都巡礼", - packageId: "pkg001", - totalAmount: "699.00", - goodsAmount: "699.00", - discountAmount: "0.00", - shippingFee: "0.00", - points: "已获得1分", - remark: "XXXX", - deliveryDate: "2025-08-10", - trackingNo: orderStatus >= 1 ? "SF120025020202" : "--", - shippingTime: orderStatus >= 2 ? "2025-07-15 01:46:25" : "", - createTime: "2025-07-15 00:46:25", - payTime: orderStatus >= 1 ? "2025-07-15 00:46:25" : "", - payMethod: "线上支付", - equityCode: "EPIC2024010112345", - qrcode: "/static/image/qrcode-sample.png", - goodsList: [ - { - id: 1, - name: "IP数字资产", - type: 1, - description: "在数字资产相册中查看", - price: "99.00", - quantity: 1, - }, - { - id: 2, - name: "IP文创公仔", - type: 2, - description: "这里是XXX相仿介绍介绍", - price: "150.00", - quantity: 1, - }, - { - id: 3, - name: "XXX园叮门票", - type: 3, - description: "这里是XXX园叮门票的介绍介绍介绍", - price: "50.00", - quantity: 1, - }, - ], - address: { - name: "XX先生", - phone: "183****1234", - fullAddress: "江苏省苏州市姑苏区XXXXXX", - province_text: "江苏省", - city_text: "苏州市", - district_text: "姑苏区", - detail_addr: "XXXXXX", - is_default: 1, - }, - }, - }; - resolve(mockData); - }, 500); - }); - }, - // API接口 - 取消订单 async cancelOrderApi(orderId) { return new Promise((resolve) => { @@ -994,4 +978,102 @@ export default { font-size: 24rpx; color: #999; } + +// 物流信息弹窗 +.logistics-popup-mask { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: rgba(0, 0, 0, 0.5); + z-index: 9999; + display: flex; + align-items: center; + justify-content: center; +} + +.logistics-popup { + width: 650rpx; + max-height: 80vh; + background-color: #fff; + border-radius: 20rpx; + overflow: hidden; + display: flex; + flex-direction: column; +} + +.logistics-popup .popup-content { + padding: 30rpx; + text-align: left; + flex: 1; + overflow-y: auto; +} + +.logistics-section { + margin-bottom: 30rpx; + + &:last-child { + margin-bottom: 0; + } +} + +.logistics-section .section-title { + font-size: 28rpx; + font-weight: 600; + color: #333; + margin-bottom: 16rpx; + border-left: 4rpx solid #007aff; + padding-left: 16rpx; +} + +.address-info { + background-color: #f8f9fa; + border-radius: 12rpx; + padding: 20rpx; +} + +.address-detail { + margin-bottom: 12rpx; +} + +.address-text { + font-size: 26rpx; + color: #333; + line-height: 1.5; +} + +.contact-info { + display: flex; + gap: 20rpx; +} + +.contact-name, +.contact-phone { + font-size: 24rpx; + color: #666; +} + +.info-item { + display: flex; + align-items: center; + margin-bottom: 12rpx; + + &:last-child { + margin-bottom: 0; + } +} + +.info-label { + font-size: 26rpx; + color: #666; + min-width: 160rpx; + flex-shrink: 0; +} + +.info-value { + font-size: 26rpx; + color: #333; + flex: 1; +} diff --git a/subPackages/orderQy/list.vue b/subPackages/orderQy/list.vue index 7fe9661..25251bd 100644 --- a/subPackages/orderQy/list.vue +++ b/subPackages/orderQy/list.vue @@ -35,7 +35,7 @@ - {{ order.packageName }} + {{ order.orderName }} {{ getStatusText(order.status) }} @@ -44,33 +44,42 @@ - {{ goods.name }} + {{ goods.goodsTitle }} {{ getGoodsTypeName(goods.type) }} - 数量:{{ goods.quantity || 1 }} + 数量:{{ goods.num || 1 }} + + @@ -81,7 +90,7 @@ 实付金额 - ¥{{ order.totalAmount }} + ¥{{ order.payMoney || 0 }} @@ -132,18 +141,13 @@ - - - + - 权益码: {{ - currentEquity.code + currentEquity.activeCode }} 长按编号可复制 @@ -159,11 +163,26 @@ export default { return { currentTab: 0, tabs: [ - { name: "全部", status: "" }, - { name: "待使用", status: 1 }, - { name: "待收货", status: 2 }, - { name: "已完成", status: 3 }, - { name: "售后/退款", status: 4 }, + { + name: "全部", + status: "", + }, + { + name: "待使用", + status: 1, + }, + { + name: "待收货", + status: 2, + }, + { + name: "已完成", + status: 3, + }, + { + name: "售后/退款", + status: 4, + }, ], orderList: [], loading: false, @@ -178,12 +197,20 @@ export default { }; }, onLoad(e) { - if(e.status){ - this.currentTab = e.status - } + if (e.status) { + this.currentTab = e.status; + } this.loadOrderList(); }, methods: { + showImgJdsz(img) { + if (!img) return; + if (img.indexOf("https://") != -1 || img.indexOf("http://") != -1) { + return img; + } else { + return this.JDSU_IMG_URL + img; + } + }, // 切换Tab switchTab(index) { this.currentTab = index; @@ -205,22 +232,28 @@ export default { this.loading = true; try { const params = { - page: this.currentPage, + pageNum: this.currentPage, pageSize: this.pageSize, status: this.tabs[this.currentTab].status, }; - - // 这里调用实际的API接口 - const res = await this.getOrderList(params); - - if (this.currentPage === 1) { - this.orderList = res.data.list || []; - } else { - this.orderList = [...this.orderList, ...(res.data.list || [])]; - } - - this.hasMore = res.data.list.length === this.pageSize; - this.currentPage++; + this.Post( + { + ...params, + }, + "/framework/order/list", + "DES" + ).then((res) => { + if (res.code == 200) { + this.orderList.push(...res.rows); + this.hasMore = res.rows.length === this.pageSize; + this.currentPage++; + } else { + uni.showToast({ + title: res.msg, + icon: "none", + }); + } + }); } catch (error) { console.error("加载订单列表失败:", error); uni.showToast({ @@ -248,11 +281,12 @@ export default { // 获取订单状态文本 getStatusText(status) { const statusMap = { - 0: "待付款", + 0: "待激活", 1: "待使用", 2: "待收货", 3: "已完成", 4: "售后/退款", + "-1": "取消", }; return statusMap[status] || "未知"; }, @@ -274,7 +308,7 @@ export default { const typeMap = { 1: "IP数字资产", 2: "IP资源商品", - 3: "君道苏州门票", + 3: "门票", }; return typeMap[type] || "未知类型"; }, @@ -288,6 +322,14 @@ export default { }; return textMap[type] || "操作"; }, + getActionBtnTexted(type) { + const textMap = { + 1: "查看", + 2: "已使用", + 3: "已使用", + }; + return textMap[type] || "操作"; + }, // 获取操作按钮样式类 getActionBtnClass(type) { @@ -321,18 +363,16 @@ export default { title: "查看数字资产", icon: "none", }); - uni.navigateTo({ - url:'/subPackages/memorialAlbum/detail' - }) + uni.navigateTo({ + url: "/subPackages/memorialAlbum/detail", + }); }, // 预约发货 reserveDelivery(goods) { // 跳转到确认订单页面 uni.navigateTo({ - url: `/subPackages/orderQy/confrim?goodsId=${ - goods.id - }&goodsName=${encodeURIComponent(goods.name)}`, + url: `/subPackages/orderQy/confrim?goodsId=${goods.orderId}`, }); }, @@ -348,7 +388,7 @@ export default { // 跳转到订单详情页面 goToOrderDetail(order) { uni.navigateTo({ - url: `/subPackages/orderQy/detail?id=${order.id}&orderNo=${order.orderNo}`, + url: `/subPackages/orderQy/detail?id=${order.orderId}`, }); }, @@ -356,7 +396,7 @@ export default { showEquityCode(order) { this.currentEquity = { qrcode: order.qrcode || "/static/image/default-qrcode.png", - code: order.equityCode || "EQUITY123456789", + activeCode: order.activeCode, }; this.$refs.equityPopup.open(); }, @@ -390,90 +430,6 @@ export default { date.getHours() ).padStart(2, "0")}:${String(date.getMinutes()).padStart(2, "0")}`; }, - - // API接口 - 获取订单列表 - async getOrderList(params) { - // 模拟API数据 - return new Promise((resolve) => { - setTimeout(() => { - const mockData = { - code: 200, - data: { - list: [ - { - id: 1, - orderNo: "EQ202401011234567", - packageName: "Epic Soul限定权益包", - status: 1, - totalAmount: "299.00", - createTime: "2024-01-01 12:00:00", - qrcode: "/static/image/qrcode-sample.png", - equityCode: "EPIC2024010112345", - goodsList: [ - { - id: 1, - name: "数字藏品-桃子系列", - type: 1, - price: "99.00", - image: "/static/image/goods1.jpg", - }, - { - id: 2, - name: "文创周边产品", - type: 2, - price: "150.00", - image: "/static/image/goods2.jpg", - }, - { - id: 3, - name: "君道苏州体验门票", - type: 3, - price: "50.00", - image: "/static/image/goods3.jpg", - }, - ], - }, - { - id: 1, - orderNo: "EQ202401011234567", - packageName: "Epic Soul限定权益包", - status: 1, - totalAmount: "299.00", - createTime: "2024-01-01 12:00:00", - qrcode: "/static/image/qrcode-sample.png", - equityCode: "EPIC2024010112345", - goodsList: [ - { - id: 1, - name: "数字藏品-桃子系列", - type: 1, - price: "99.00", - image: "/static/image/goods1.jpg", - }, - { - id: 2, - name: "文创周边产品", - type: 2, - price: "150.00", - image: "/static/image/goods2.jpg", - }, - { - id: 3, - name: "君道苏州体验门票", - type: 3, - price: "50.00", - image: "/static/image/goods3.jpg", - }, - ], - }, - // 可以添加更多模拟数据 - ], - }, - }; - resolve(mockData); - }, 1000); - }); - }, }, }; @@ -711,11 +667,12 @@ $bg-light: #f7fafc; height: 100rpx; border-radius: 12rpx; margin-right: 20rpx; + flex-shrink: 0; } .goods-info { - flex: 1; margin-right: 20rpx; + width: 330rpx; } .goods-name { @@ -760,6 +717,8 @@ $bg-light: #f7fafc; } .goods-action { + margin-left: auto; + .action-btn { padding: 0rpx 20rpx; border-radius: 10rpx; @@ -773,6 +732,7 @@ $bg-light: #f7fafc; background-color: #77f3f9; height: 55rpx; line-height: 55rpx; + &:active { transform: scale(0.95); } @@ -850,6 +810,7 @@ $bg-light: #f7fafc; transition: all 0.3s ease; height: 55rpx; line-height: 55rpx; + &:active { transform: scale(0.95); }