From 04b6924a08b87447922d8fa8797c292279789594 Mon Sep 17 00:00:00 2001
From: Alex-larget <33240357+Alex-larget@users.noreply.github.com>
Date: Fri, 6 Mar 2026 15:16:19 +0800
Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E8=B7=A8=E5=A4=9A=E4=B8=AA?=
=?UTF-8?q?=E9=A1=B5=E9=9D=A2=E7=9A=84=E5=AF=BC=E8=88=AA=E9=80=BB=E8=BE=91?=
=?UTF-8?q?=EF=BC=8C=E4=BB=A5=E5=88=A9=E7=94=A8=E9=9B=86=E4=B8=AD=E7=9A=84?=
=?UTF-8?q?`goBackOrToHome`=E6=96=B9=E6=B3=95=EF=BC=8C=E9=80=9A=E8=BF=87?=
=?UTF-8?q?=E7=A1=AE=E4=BF=9D=E4=B8=80=E8=87=B4=E7=9A=84=E8=BF=94=E5=9B=9E?=
=?UTF-8?q?=E5=AF=BC=E8=88=AA=E8=A1=8C=E4=B8=BA=E6=9D=A5=E6=8F=90=E5=8D=87?=
=?UTF-8?q?=E7=94=A8=E6=88=B7=E4=BD=93=E9=AA=8C=E3=80=82=E6=9B=B4=E6=96=B0?=
=?UTF-8?q?app.js=E4=BB=A5=E5=8C=85=E5=90=AB=E6=AD=A4=E6=96=B9=E6=B3=95?=
=?UTF-8?q?=EF=BC=8C=E5=B9=B6=E7=9B=B8=E5=BA=94=E8=B0=83=E6=95=B4=E7=9B=B8?=
=?UTF-8?q?=E5=85=B3=E9=A1=B5=E9=9D=A2=E3=80=82=E6=AD=A4=E5=A4=96=EF=BC=8C?=
=?UTF-8?q?=E5=AF=B9=E6=AF=94=E8=B5=9B=E9=A1=B5=E9=9D=A2=E8=BF=9B=E8=A1=8C?=
=?UTF-8?q?=E4=BA=86=E7=BB=86=E5=BE=AE=E7=9A=84=E5=B8=83=E5=B1=80=E8=B0=83?=
=?UTF-8?q?=E6=95=B4=EF=BC=8C=E4=BB=A5=E6=8F=90=E9=AB=98=E7=94=A8=E6=88=B7?=
=?UTF-8?q?=E7=95=8C=E9=9D=A2=E7=9A=84=E8=BF=9E=E8=B4=AF=E6=80=A7=E3=80=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
miniprogram/app.js | 16 ++++++++++++--
miniprogram/pages/about/about.js | 2 +-
miniprogram/pages/addresses/addresses.js | 4 ++--
miniprogram/pages/addresses/edit.js | 4 ++--
miniprogram/pages/agreement/agreement.js | 2 +-
miniprogram/pages/match/match.wxml | 3 ++-
miniprogram/pages/match/match.wxss | 21 ++++++++++++-------
.../pages/member-detail/member-detail.js | 2 +-
.../pages/mentor-detail/mentor-detail.js | 2 +-
miniprogram/pages/mentors/mentors.js | 2 +-
miniprogram/pages/my/my.js | 5 ++---
miniprogram/pages/my/my.wxml | 2 +-
miniprogram/pages/my/my.wxss | 3 ++-
miniprogram/pages/privacy/privacy.js | 2 +-
.../pages/profile-edit/profile-edit.js | 6 +++---
.../pages/profile-show/profile-show.js | 4 ++--
miniprogram/pages/purchases/purchases.js | 2 +-
miniprogram/pages/read/read.js | 6 ++----
miniprogram/pages/referral/referral.js | 4 ++--
miniprogram/pages/search/search.js | 2 +-
miniprogram/pages/settings/settings.js | 4 ++--
miniprogram/pages/vip/vip.js | 2 +-
.../withdraw-records/withdraw-records.js | 2 +-
23 files changed, 60 insertions(+), 42 deletions(-)
diff --git a/miniprogram/app.js b/miniprogram/app.js
index f3c17bc9..1abc1ba6 100644
--- a/miniprogram/app.js
+++ b/miniprogram/app.js
@@ -8,9 +8,9 @@ const { parseScene } = require('./utils/scene.js')
App({
globalData: {
// API基础地址 - 连接真实后端
- // baseUrl: 'https://soulapi.quwanzhi.com',
+ baseUrl: 'https://soulapi.quwanzhi.com',
// baseUrl: 'https://souldev.quwanzhi.com',
- baseUrl: 'http://localhost:8080',
+ // baseUrl: 'http://localhost:8080',
// 小程序配置 - 真实AppID
@@ -187,6 +187,18 @@ App({
return ''
},
+ /**
+ * 自定义导航栏「返回」:有上一页则返回,否则跳转首页(解决从分享进入时点返回无效的问题)
+ */
+ goBackOrToHome() {
+ const pages = getCurrentPages()
+ if (pages.length <= 1) {
+ wx.switchTab({ url: '/pages/index/index' })
+ } else {
+ wx.navigateBack()
+ }
+ },
+
// 获取系统信息
getSystemInfo() {
try {
diff --git a/miniprogram/pages/about/about.js b/miniprogram/pages/about/about.js
index 2dc3a222..af04d83d 100644
--- a/miniprogram/pages/about/about.js
+++ b/miniprogram/pages/about/about.js
@@ -115,7 +115,7 @@ Page({
// 返回
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
onShareAppMessage() {
diff --git a/miniprogram/pages/addresses/addresses.js b/miniprogram/pages/addresses/addresses.js
index 1d4a50e1..0dbd7f7e 100644
--- a/miniprogram/pages/addresses/addresses.js
+++ b/miniprogram/pages/addresses/addresses.js
@@ -41,7 +41,7 @@ Page({
if (res.confirm) {
wx.switchTab({ url: '/pages/my/my' })
} else {
- wx.navigateBack()
+ getApp().goBackOrToHome()
}
}
})
@@ -119,7 +119,7 @@ Page({
// 返回
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
onShareAppMessage() {
diff --git a/miniprogram/pages/addresses/edit.js b/miniprogram/pages/addresses/edit.js
index efacd000..a7d6925e 100644
--- a/miniprogram/pages/addresses/edit.js
+++ b/miniprogram/pages/addresses/edit.js
@@ -180,7 +180,7 @@ Page({
icon: 'success'
})
setTimeout(() => {
- wx.navigateBack()
+ getApp().goBackOrToHome()
}, 1500)
} else {
wx.hideLoading()
@@ -197,7 +197,7 @@ Page({
// 返回
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
onShareAppMessage() {
diff --git a/miniprogram/pages/agreement/agreement.js b/miniprogram/pages/agreement/agreement.js
index ea413a87..d7ad88c1 100644
--- a/miniprogram/pages/agreement/agreement.js
+++ b/miniprogram/pages/agreement/agreement.js
@@ -17,7 +17,7 @@ Page({
},
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
onShareAppMessage() {
diff --git a/miniprogram/pages/match/match.wxml b/miniprogram/pages/match/match.wxml
index d4beb615..a975729e 100644
--- a/miniprogram/pages/match/match.wxml
+++ b/miniprogram/pages/match/match.wxml
@@ -4,10 +4,11 @@
- 找伙伴
⚙️
+ 找伙伴
+
diff --git a/miniprogram/pages/match/match.wxss b/miniprogram/pages/match/match.wxss
index 6842699c..3eac33f3 100644
--- a/miniprogram/pages/match/match.wxss
+++ b/miniprogram/pages/match/match.wxss
@@ -24,19 +24,13 @@
height: 88rpx;
display: flex;
align-items: center;
- justify-content: space-between;
padding: 0 32rpx;
}
-.nav-title {
- font-size: 36rpx;
- font-weight: 700;
- color: #ffffff;
-}
-
.nav-settings {
width: 80rpx;
height: 80rpx;
+ flex-shrink: 0;
border-radius: 50%;
background: #1c1c1e;
display: flex;
@@ -44,6 +38,19 @@
justify-content: center;
}
+.nav-title {
+ flex: 1;
+ font-size: 36rpx;
+ font-weight: 700;
+ color: #ffffff;
+ text-align: center;
+}
+
+.nav-right-placeholder {
+ width: 80rpx;
+ flex-shrink: 0;
+}
+
.settings-icon {
font-size: 36rpx;
}
diff --git a/miniprogram/pages/member-detail/member-detail.js b/miniprogram/pages/member-detail/member-detail.js
index 46a505db..1778c371 100644
--- a/miniprogram/pages/member-detail/member-detail.js
+++ b/miniprogram/pages/member-detail/member-detail.js
@@ -180,7 +180,7 @@ Page({
goToMatch() { wx.switchTab({ url: '/pages/match/match' }) },
goToVip() { wx.navigateTo({ url: '/pages/vip/vip' }) },
- goBack() { wx.navigateBack() },
+ goBack() { getApp().goBackOrToHome() },
onShareAppMessage() {
const ref = app.getMyReferralCode()
diff --git a/miniprogram/pages/mentor-detail/mentor-detail.js b/miniprogram/pages/mentor-detail/mentor-detail.js
index 84f935c7..39ad0ac3 100644
--- a/miniprogram/pages/mentor-detail/mentor-detail.js
+++ b/miniprogram/pages/mentor-detail/mentor-detail.js
@@ -108,6 +108,6 @@ Page({
},
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
})
diff --git a/miniprogram/pages/mentors/mentors.js b/miniprogram/pages/mentors/mentors.js
index 7fda9f86..00bf3a69 100644
--- a/miniprogram/pages/mentors/mentors.js
+++ b/miniprogram/pages/mentors/mentors.js
@@ -60,6 +60,6 @@ Page({
},
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
})
diff --git a/miniprogram/pages/my/my.js b/miniprogram/pages/my/my.js
index 688b5e9f..0376d0b5 100644
--- a/miniprogram/pages/my/my.js
+++ b/miniprogram/pages/my/my.js
@@ -668,15 +668,14 @@ Page({
} catch (e) { console.log('[My] VIP查询失败', e) }
},
- // 头像点击:已登录弹出选项(微信头像 / 相册 / VIP)
+ // 头像点击:已登录弹出选项(微信头像 / 相册)
onAvatarTap() {
if (!this.data.isLoggedIn) { this.showLogin(); return }
wx.showActionSheet({
- itemList: ['获取微信头像', '从相册选择', '开通/管理VIP'],
+ itemList: ['获取微信头像', '从相册选择'],
success: (res) => {
if (res.tapIndex === 0) this.setData({ showAvatarModal: true })
if (res.tapIndex === 1) this.chooseAvatarFromAlbum()
- if (res.tapIndex === 2) this.goToVip()
}
})
},
diff --git a/miniprogram/pages/my/my.wxml b/miniprogram/pages/my/my.wxml
index 507e74cc..c05f3c4f 100644
--- a/miniprogram/pages/my/my.wxml
+++ b/miniprogram/pages/my/my.wxml
@@ -29,7 +29,7 @@
{{userInfo.nickname ? userInfo.nickname[0] : '?'}}
VIP
- VIP
+ VIP
diff --git a/miniprogram/pages/my/my.wxss b/miniprogram/pages/my/my.wxss
index cc4f02c7..62a7c175 100644
--- a/miniprogram/pages/my/my.wxss
+++ b/miniprogram/pages/my/my.wxss
@@ -35,7 +35,7 @@
.guest-login-btn { padding: 20rpx 48rpx; background: #4FD1C5; color: #000; font-size: 28rpx; font-weight: 600; border-radius: 24rpx; }
/* ===== 用户卡片(设计稿 1:1) ===== */
-.profile-card { padding: 24rpx 16rpx 32rpx; }
+.profile-card { padding: 30rpx; }
.profile-card-inner {
background: #1A1A1A; border-radius: 24rpx; padding: 32rpx;
border: 1rpx solid rgba(75,85,99,0.5);
@@ -90,6 +90,7 @@
.card {
background: #1A1A1A; border-radius: 24rpx; padding: 32rpx;
margin-bottom: 24rpx; border: 1rpx solid rgba(75,85,99,0.5);
+ margin:0prx 20rpx!important;
}
.card-header { display: flex; align-items: center; gap: 16rpx; margin-bottom: 32rpx; }
.card-icon { font-size: 40rpx; }
diff --git a/miniprogram/pages/privacy/privacy.js b/miniprogram/pages/privacy/privacy.js
index a12def28..6696bfcc 100644
--- a/miniprogram/pages/privacy/privacy.js
+++ b/miniprogram/pages/privacy/privacy.js
@@ -17,7 +17,7 @@ Page({
},
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
onShareAppMessage() {
diff --git a/miniprogram/pages/profile-edit/profile-edit.js b/miniprogram/pages/profile-edit/profile-edit.js
index e88d7bbd..7f3ce334 100644
--- a/miniprogram/pages/profile-edit/profile-edit.js
+++ b/miniprogram/pages/profile-edit/profile-edit.js
@@ -49,7 +49,7 @@ Page({
if (!app.globalData.isLoggedIn || !userInfo?.id) {
this.setData({ loading: false })
wx.showToast({ title: '请先登录', icon: 'none' })
- setTimeout(() => wx.navigateBack(), 1500)
+ setTimeout(() => getApp().goBackOrToHome(), 1500)
return
}
try {
@@ -92,7 +92,7 @@ Page({
}
},
- goBack() { wx.navigateBack() },
+ goBack() { getApp().goBackOrToHome() },
onNicknameInput(e) { this.setData({ nickname: e.detail.value }) },
onRegionInput(e) { this.setData({ region: e.detail.value }) },
@@ -213,7 +213,7 @@ Page({
if (payload.avatar) app.globalData.userInfo.avatar = payload.avatar
wx.setStorageSync('userInfo', app.globalData.userInfo)
}
- setTimeout(() => wx.navigateBack(), 800)
+ setTimeout(() => getApp().goBackOrToHome(), 800)
} catch (e) {
wx.showToast({ title: e.message || '保存失败', icon: 'none' })
}
diff --git a/miniprogram/pages/profile-show/profile-show.js b/miniprogram/pages/profile-show/profile-show.js
index 81e7b14d..b5d884e9 100644
--- a/miniprogram/pages/profile-show/profile-show.js
+++ b/miniprogram/pages/profile-show/profile-show.js
@@ -25,7 +25,7 @@ Page({
if (!app.globalData.isLoggedIn || !userInfo?.id) {
this.setData({ loading: false })
wx.showToast({ title: '请先登录', icon: 'none' })
- setTimeout(() => wx.navigateBack(), 1500)
+ setTimeout(() => getApp().goBackOrToHome(), 1500)
return
}
this.setData({ loading: true })
@@ -65,7 +65,7 @@ Page({
},
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
goToEdit() {
diff --git a/miniprogram/pages/purchases/purchases.js b/miniprogram/pages/purchases/purchases.js
index 72c2a9a7..63d2819b 100644
--- a/miniprogram/pages/purchases/purchases.js
+++ b/miniprogram/pages/purchases/purchases.js
@@ -61,7 +61,7 @@ Page({
}
},
- goBack() { wx.navigateBack() },
+ goBack() { getApp().goBackOrToHome() },
onShareAppMessage() {
const ref = app.getMyReferralCode()
diff --git a/miniprogram/pages/read/read.js b/miniprogram/pages/read/read.js
index a03ba8ba..3c342f51 100644
--- a/miniprogram/pages/read/read.js
+++ b/miniprogram/pages/read/read.js
@@ -461,11 +461,9 @@ Page({
})
},
- // 返回
+ // 返回(从分享进入无栈时回首页)
goBack() {
- wx.navigateBack({
- fail: () => wx.switchTab({ url: '/pages/chapters/chapters' })
- })
+ getApp().goBackOrToHome()
},
// 分享弹窗
diff --git a/miniprogram/pages/referral/referral.js b/miniprogram/pages/referral/referral.js
index 9685e2e7..3ac5233a 100644
--- a/miniprogram/pages/referral/referral.js
+++ b/miniprogram/pages/referral/referral.js
@@ -902,8 +902,8 @@ Page({
}
},
- goBack() {
- wx.navigateBack()
+ goBack() {
+ getApp().goBackOrToHome()
},
// 解析商品描述,获取书名和章节
diff --git a/miniprogram/pages/search/search.js b/miniprogram/pages/search/search.js
index 6d177392..7e2bb727 100644
--- a/miniprogram/pages/search/search.js
+++ b/miniprogram/pages/search/search.js
@@ -115,7 +115,7 @@ Page({
// 返回上一页
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
onShareAppMessage() {
diff --git a/miniprogram/pages/settings/settings.js b/miniprogram/pages/settings/settings.js
index 5b21cb2a..b47db981 100644
--- a/miniprogram/pages/settings/settings.js
+++ b/miniprogram/pages/settings/settings.js
@@ -414,7 +414,7 @@ Page({
alipayAccount: ''
})
wx.showToast({ title: '已退出登录', icon: 'success' })
- setTimeout(() => wx.navigateBack(), 1500)
+ setTimeout(() => getApp().goBackOrToHome(), 1500)
}
}
})
@@ -428,7 +428,7 @@ Page({
// 阻止冒泡
stopPropagation() {},
- goBack() { wx.navigateBack() },
+ goBack() { getApp().goBackOrToHome() },
// 跳转到地址管理页
goToAddresses() {
diff --git a/miniprogram/pages/vip/vip.js b/miniprogram/pages/vip/vip.js
index b0e6d903..b8cc9863 100644
--- a/miniprogram/pages/vip/vip.js
+++ b/miniprogram/pages/vip/vip.js
@@ -126,7 +126,7 @@ Page({
wx.hideLoading()
},
- goBack() { wx.navigateBack() },
+ goBack() { getApp().goBackOrToHome() },
onShareAppMessage() {
const ref = app.getMyReferralCode()
diff --git a/miniprogram/pages/withdraw-records/withdraw-records.js b/miniprogram/pages/withdraw-records/withdraw-records.js
index 22000ecd..edd1882e 100644
--- a/miniprogram/pages/withdraw-records/withdraw-records.js
+++ b/miniprogram/pages/withdraw-records/withdraw-records.js
@@ -69,7 +69,7 @@ Page({
},
goBack() {
- wx.navigateBack()
+ getApp().goBackOrToHome()
},
async onReceiveTap(e) {