From a8cd4ff1a10f458526829facf8644d35dc9a065f Mon Sep 17 00:00:00 2001 From: Karlcarlo Date: Sat, 14 Nov 2026 19:10:49 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E7=89=88=E6=9C=AC):=20=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E5=8D=87=E5=88=B0=200.3.14=EF=BC=8C=E3=80=8C=E6=88=91?= =?UTF-8?q?=E7=9A=84=E3=80=8D=E9=A1=B5=E5=B1=95=E7=A4=BA=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - manifest.json:versionName 0.3.14 / versionCode 314(原 0.3.8/38 与线上 0.3.13 脱节) - config/version.js:展示兜底值,与 manifest 同步 bump - pages/user/index.vue:底部版权区显示「版本号 vX」;体验版/正式版读 wx.getAccountInfoSync().miniProgram.version(即上传时填的版本),开发版读不到回退常量 --- config/version.js | 18 ++++++++++++++++++ manifest.json | 4 ++-- pages/user/index.vue | 28 ++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 config/version.js diff --git a/config/version.js b/config/version.js new file mode 100644 index 0000000..4edce31 --- /dev/null +++ b/config/version.js @@ -0,0 +1,18 @@ +// +---------------------------------------------------------------------- +// | 版本号(界面展示兜底值) +// +---------------------------------------------------------------------- +// | 用途:「我的」页底部展示当前版本,方便真机/体验版核对是不是新包。 +// | +// | 取值优先级: +// | ① 体验版/正式版 → 读微信真实版本(wx.getAccountInfoSync().miniProgram.version, +// | 即上传时填的版本号,线上现为 0.3.13); +// | ② 开发版/读不到(开发期为空串)→ 用这里的 VERSION 兜底。 +// | +// | ⚠️ VERSION 必须与 manifest.json 的 versionName 同步:每次发版 bump 时**两处一起改**。 +// | manifest 决定包版本,但微信上传时填的版本号是独立的,所以线上以 ① 为准, +// | 不要把这里当成「已发布版本」的唯一来源。 +// +---------------------------------------------------------------------- + +module.exports = { + VERSION: '0.3.14' +}; diff --git a/manifest.json b/manifest.json index 2749dc3..7067ae1 100644 --- a/manifest.json +++ b/manifest.json @@ -2,8 +2,8 @@ "name" : "兜爸心选", "appid" : "__UNI__52BA861", "description" : "兜爸心选", - "versionName" : "0.3.8", - "versionCode" : 38, + "versionName" : "0.3.14", + "versionCode" : 314, "transformPx" : false, "sassImplementationName" : "node-sass", /* 5+App特有相关 */ diff --git a/pages/user/index.vue b/pages/user/index.vue index 1bd93e3..bdde6a4 100644 --- a/pages/user/index.vue +++ b/pages/user/index.vue @@ -21,6 +21,8 @@ + + 版本号 v{{ appVersion }} @@ -45,6 +47,24 @@ import Cache from '@/utils/cache'; import Auth from '@/libs/wechat'; // #endif import { HTTP_REQUEST_URL } from '@/config/app'; +import version from '@/config/version.js'; + +/* 「我的」页展示的版本号: + 体验版/正式版直接读微信当前包的版本(上传时填的那个,线上现为 0.3.13); + 开发版读不到(返回空串)时用 config/version.js 兜底。 + 这样显示的永远是用户手上这个包的真实版本,不会因为 manifest 与上传版本脱节而假报版本。 */ +function currentAppVersion() { + let v = ''; + // #ifdef MP-WEIXIN + try { + const info = wx.getAccountInfoSync(); + v = (info && info.miniProgram && info.miniProgram.version) || ''; + } catch (e) {} + // #endif + // 个别开发者工具版本在开发版会回 "0",按「读不到」处理 + if (!v || v === '0') v = ''; + return v || version.VERSION; +} const app = getApp(); import ewcomerPop from '@/components/ewcomerPop/index.vue'; import pageFooter from '@/components/pageFooter/index.vue'; @@ -191,6 +211,8 @@ export default { }, imgHost: HTTP_REQUEST_URL, configData: Cache.get('BASIC_CONFIG'), + // 版本号展示:体验版/正式版读微信实际版本,开发版回退 config/version.js + appVersion: currentAppVersion(), copyrightImage: HTTP_REQUEST_URL + '/statics/images/product/support.png', giftPic: '', vip_type: 1, @@ -670,5 +692,11 @@ export default { font-size: 20rpx; margin-bottom: 20rpx; } + /* 版本号:比版权文案再淡一档,避免抢视觉重心 */ + .app-version { + margin-top: 12rpx; + font-size: 20rpx; + color: #ccc; + } }