diff --git a/pages/mine/set/personMsg.vue b/pages/mine/set/personMsg.vue
index 3042c3d..dc4254d 100644
--- a/pages/mine/set/personMsg.vue
+++ b/pages/mine/set/personMsg.vue
@@ -1,9 +1,32 @@
+
+
+
+
+
@@ -239,6 +396,22 @@ page {
}
}
+.avatar-btn {
+ width: 100%;
+ padding: 40rpx 0 20rpx;
+ margin: 0;
+ background: transparent;
+ border: none;
+ border-radius: 0;
+ line-height: 2em;
+ font-size: $font-sm;
+ color: $font-color-light;
+
+ &::after {
+ border: none;
+ }
+}
+
.form {
background: #fff;
}
@@ -274,6 +447,22 @@ page {
color: #666 !important;
}
+.wx-nickname {
+ width: 100%;
+ height: 100%;
+ min-height: 44rpx;
+ text-align: right;
+ font-size: 28rpx;
+ color: #666;
+ background: transparent;
+}
+
+.wx-nickname-placeholder {
+ color: #c0c4cc;
+ font-size: 28rpx;
+ text-align: right;
+}
+
.sex-row {
width: 100%;
display: flex;
@@ -322,6 +511,13 @@ page {
font-size: 30rpx;
background: $light-color;
color: #fff;
+ border: none;
+ padding: 0;
+ margin: 0;
+
+ &::after {
+ border: none;
+ }
}
.submit + .submit {
diff --git a/pages/product/shopPage.vue b/pages/product/shopPage.vue
index e1d66dc..9b4326d 100644
--- a/pages/product/shopPage.vue
+++ b/pages/product/shopPage.vue
@@ -234,7 +234,7 @@ import {
getStoreIsCollect,
} from '@/api/members.js'
import config from '@/config/config'
-import { getGoodsList } from '@/api/goods.js'
+import { getGoodsList, getMpScene } from '@/api/goods.js'
import { getAllCoupons } from '@/api/promotions.js'
import { getFloorStoreData } from '@/api/home'
import {
@@ -504,12 +504,41 @@ function getCoupon(item: any) {
})
}
-onLoad((options: any) => {
- storeId.value = options.id
- console.log(storeId.value, 'this.storeId')
+function parseShopIdFromScene(raw: string) {
+ const scene = decodeURIComponent(String(raw || ''))
+ if (!scene) return ''
+ if (scene.includes('id=')) {
+ return scene.split('id=')[1].split('&')[0]
+ }
+ return scene
+}
- goodsParams.storeId = options.id
- couponParams.storeId = options.id
+async function resolveShopId(options: any) {
+ if (options?.id) return String(options.id)
+ if (!options?.scene) return ''
+ const scene = decodeURIComponent(String(options.scene))
+ if (scene.includes('id=')) {
+ return parseShopIdFromScene(scene)
+ }
+ try {
+ const res = await getMpScene(scene)
+ const payload = res?.data != null ? res.data : res
+ if (payload?.success && payload.result) {
+ return parseShopIdFromScene(String(payload.result))
+ }
+ } catch (e) {
+ // 短链解析失败时,把 scene 当店铺ID用
+ }
+ return scene
+}
+
+onLoad(async (options: any) => {
+ storeId.value = await resolveShopId(options)
+ goodsParams.storeId = storeId.value
+ couponParams.storeId = storeId.value
+ if (storeId.value) {
+ init()
+ }
})
onPageScroll((e) => {
@@ -531,7 +560,6 @@ onMounted(() => {
withShareTicket: true,
})
// #endif
- init()
})