ソースを参照

feat: 更新版本号至1.4.3,优化关于页面版本号获取逻辑,新增环境变量版本号定义

laiqi 11 ヶ月 前
コミット
f5ad2706d2
8 ファイル変更56 行追加5 行削除
  1. 1 1
      env/.env
  2. 2 0
      env/.env.development
  3. 2 0
      env/.env.production
  4. 1 1
      package.json
  5. 2 0
      src/env.d.ts
  6. 13 3
      src/pages/about/index.vue
  7. 16 0
      src/pages/settings/index.vue
  8. 19 0
      src/store/settings.ts

+ 1 - 1
env/.env

@@ -1,6 +1,6 @@
 VITE_APP_TITLE='达川农机优惠劵'
 VITE_APP_PORT=9000
-VITE_APP_VERSION=1.4.2
+VITE_APP_VERSION=1.4.3
 
 VITE_UNI_APPID='H57F2ACE4'
 VITE_WX_APPID='wxd3ca52d7f454048d'

+ 2 - 0
env/.env.development

@@ -1,5 +1,7 @@
 # 变量必须以 VITE_ 为前缀才能暴露给外部读取
 NODE_ENV='development'
+# 应用版本号
+VITE_APP_VERSION=1.4.3
 # 是否去除console 和 debugger
 VITE_DELETE_CONSOLE=false
 # 是否开启sourcemap

+ 2 - 0
env/.env.production

@@ -1,5 +1,7 @@
 # 变量必须以 VITE_ 为前缀才能暴露给外部读取
 NODE_ENV='production'
+# 应用版本号
+VITE_APP_VERSION=1.4.3
 # 是否去除console 和 debugger
 VITE_DELETE_CONSOLE=true
 # 是否开启sourcemap

+ 1 - 1
package.json

@@ -1,7 +1,7 @@
 {
   "name": "samool-uni",
   "type": "commonjs",
-  "version": "2.5.5",
+  "version": "1.4.3",
   "description": "unibest - 最好的 uniapp 开发模板",
   "author": {
     "name": "laiqi",

+ 2 - 0
src/env.d.ts

@@ -11,6 +11,8 @@ declare module '*.vue' {
 interface ImportMetaEnv {
   /** 网站标题,应用名称 */
   readonly VITE_APP_TITLE: string
+  /** 应用版本号 */
+  readonly VITE_APP_VERSION: string
   /** 服务端口号 */
   readonly VITE_SERVER_PORT: string
   /** 后台接口地址 */

+ 13 - 3
src/pages/about/index.vue

@@ -44,9 +44,19 @@
 </template>
 
 <script lang="ts" setup>
-// 使用固定版本号,从源代码维护
-// 因为环境变量可能会因为构建配置问题无法正确加载
-const version = ref(import.meta.env.VITE_APP_VERSION)
+// 获取版本号,优先使用环境变量,如果获取不到则使用默认值
+const getVersion = () => {
+  // 尝试从环境变量获取
+  const envVersion = import.meta.env.VITE_APP_VERSION
+  if (envVersion && envVersion !== 'undefined') {
+    return envVersion
+  }
+}
+
+const version = ref(getVersion())
+
+// 调试信息:检查版本号是否正确获取
+console.log('当前版本号:', version.value)
 </script>
 
 <style lang="scss" scoped>

+ 16 - 0
src/pages/settings/index.vue

@@ -92,6 +92,22 @@ const handleAuditMessageChange = async ({ value }: { value: boolean }) => {
       title: value ? '已开启审核消息订阅' : '已关闭审核消息订阅',
       icon: 'none',
     })
+
+    // 如果是订阅,则调起wx.requestSubscribeMessage
+    if (value) {
+      const res: any = await settingsStore.requestSubscribeMessage()
+      if (res.errMsg === 'requestSubscribeMessage:ok') {
+        uni.showToast({
+          title: '订阅成功',
+          icon: 'none',
+        })
+      } else {
+        uni.showToast({
+          title: '订阅失败',
+          icon: 'none',
+        })
+      }
+    }
   } catch (error) {
     // console.error('更新审核消息订阅状态失败:', error)
     // uni.showToast({

+ 19 - 0
src/store/settings.ts

@@ -43,9 +43,28 @@ export const useSettingsStore = defineStore(
       return res.Data
     }
 
+    // 调起wx.requestSubscribeMessage
+    const requestSubscribeMessage = async () => {
+      return new Promise((resolve, reject) => {
+        const params = {
+          tmplIds: ['oi3JmzaEbkAXubBsPPMDE8Grjfj9Tf0VP7rttWAgPlA'],
+          success: (res) => {
+            console.log('requestSubscribeMessage success', res)
+            resolve(res)
+          },
+          fail: (err) => {
+            console.log('requestSubscribeMessage fail', err)
+            reject(err)
+          },
+        }
+        wx.requestSubscribeMessage(params)
+      })
+    }
+
     return {
       submitAuditMessageSubscription,
       getAuditMessageSubscription,
+      requestSubscribeMessage,
     }
   },
   {