From c092d3b86a223e279ccf57be27d8f1eb315de089 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期三, 26 二月 2025 17:21:56 +0800 Subject: [PATCH] fix: 对接 --- apps/taro/package.json | 44 +++++++++++----------- apps/taro/src/components/Layout/PageLayout.vue | 4 + apps/taro/src/pages/home/index.vue | 2 packages/components/src/views/SelectPayTypeView/SelectPayTypeView.vue | 4 +- apps/taro/src/pages/mine/index.vue | 6 +- apps/taro/src/hooks/router.ts | 27 +++++++++++++ apps/taro/config/index.js | 1 apps/taro/src/stores/modules/app.ts | 26 +++++++++++++ 8 files changed, 85 insertions(+), 29 deletions(-) diff --git a/apps/taro/config/index.js b/apps/taro/config/index.js index fbd1d2e..940dfcb 100644 --- a/apps/taro/config/index.js +++ b/apps/taro/config/index.js @@ -226,6 +226,7 @@ htmlPluginOption: { favicon: './public/logo-v.png', }, + useHtmlComponents: true, webpackChain(chain, webpack) { chain.plugin('unplugin-auto-import').use( AutoImport({ diff --git a/apps/taro/package.json b/apps/taro/package.json index 986d91d..fbffeee 100644 --- a/apps/taro/package.json +++ b/apps/taro/package.json @@ -50,23 +50,23 @@ "@nutui/icons-vue-taro": "^0.0.9", "@nutui/nutui-taro": "^4.3.13", "@tanstack/vue-query": "^4.35.3", - "@tarojs/components": "4.0.9", - "@tarojs/helper": "4.0.9", - "@tarojs/plugin-framework-vue3": "4.0.9", - "@tarojs/plugin-html": "4.0.9", - "@tarojs/plugin-http": "4.0.9", - "@tarojs/plugin-platform-alipay": "4.0.9", - "@tarojs/plugin-platform-h5": "4.0.9", - "@tarojs/plugin-platform-jd": "4.0.9", - "@tarojs/plugin-platform-qq": "4.0.9", - "@tarojs/plugin-platform-swan": "4.0.9", - "@tarojs/plugin-platform-tt": "4.0.9", - "@tarojs/plugin-platform-weapp": "4.0.9", - "@tarojs/router": "4.0.9", - "@tarojs/runtime": "4.0.9", - "@tarojs/shared": "4.0.9", - "@tarojs/taro": "4.0.9", - "@tarojs/taro-h5": "4.0.9", + "@tarojs/components": "3.6.20", + "@tarojs/helper": "3.6.20", + "@tarojs/plugin-framework-vue3": "3.6.20", + "@tarojs/plugin-html": "3.6.20", + "@tarojs/plugin-http": "3.6.20", + "@tarojs/plugin-platform-alipay": "3.6.20", + "@tarojs/plugin-platform-h5": "3.6.20", + "@tarojs/plugin-platform-jd": "3.6.20", + "@tarojs/plugin-platform-qq": "3.6.20", + "@tarojs/plugin-platform-swan": "3.6.20", + "@tarojs/plugin-platform-tt": "3.6.20", + "@tarojs/plugin-platform-weapp": "3.6.20", + "@tarojs/router": "3.6.20", + "@tarojs/runtime": "3.6.20", + "@tarojs/shared": "3.6.20", + "@tarojs/taro": "3.6.20", + "@tarojs/taro-h5": "3.6.20", "@vant/weapp": "^1.11.1", "axios": "^1.4.0", "crypto-js": "^4.1.1", @@ -85,12 +85,12 @@ "devDependencies": { "@babel/core": "^7.8.0", "@nutui/auto-import-resolver": "^1.0.0", - "@tarojs/cli": "4.0.9", + "@tarojs/cli": "3.6.20", "@tarojs/plugin-mini-ci": "^4.0.7", "@tarojs/plugin-mock": "^0.0.9", - "@tarojs/plugin-vue-devtools": "^4.0.9", - "@tarojs/service": "^4.0.9", - "@tarojs/webpack5-runner": "4.0.9", + "@tarojs/plugin-vue-devtools": "^3.6.20", + "@tarojs/service": "^3.6.20", + "@tarojs/webpack5-runner": "3.6.20", "@types/crypto-js": "^4.1.1", "@types/lodash": "^4.14.198", "@types/webpack-env": "^1.13.6", @@ -99,7 +99,7 @@ "babel-plugin-import": "^1.13.8", "babel-plugin-lodash": "^3.3.4", "babel-plugin-transform-remove-console": "^6.9.4", - "babel-preset-taro": "4.0.9", + "babel-preset-taro": "3.6.20", "cache-loader": "^4.1.0", "cross-env": "^7.0.3", "mockjs": "^1.1.0", diff --git a/apps/taro/src/components/Layout/PageLayout.vue b/apps/taro/src/components/Layout/PageLayout.vue index 0117384..1b283f0 100644 --- a/apps/taro/src/components/Layout/PageLayout.vue +++ b/apps/taro/src/components/Layout/PageLayout.vue @@ -42,7 +42,7 @@ import { useSystemStore } from '@/stores/modules/system'; import Taro from '@tarojs/taro'; import { TabBarPageRouter } from '@/constants'; -import { useAuth } from '@/hooks'; +import { useAuth, useTabRouteEnhance } from '@/hooks'; import { Portal } from 'senin-mini/components'; import { usePickProps } from 'senin-mini/hooks'; import { isWeb, isInAlipay, isInWeChat } from '@/utils/env'; @@ -76,6 +76,8 @@ setPageTitle(props.title); +useTabRouteEnhance(); + const _commonNavigationBarProps = usePickProps(props, commonNavigationBarProps); const _showNavigationBar = computed(() => { diff --git a/apps/taro/src/hooks/router.ts b/apps/taro/src/hooks/router.ts index 6d7bf5f..b1236c1 100644 --- a/apps/taro/src/hooks/router.ts +++ b/apps/taro/src/hooks/router.ts @@ -1,6 +1,8 @@ import Taro from '@tarojs/taro'; import { TabBarPageRouter } from '@/constants'; import { useSystemStore } from '@/stores/modules/system'; +import { useAppStore } from '@/stores/modules/app'; +import { isInAlipay } from '@/utils/env'; export function useSwitchTab() { const systemStore = useSystemStore(); @@ -41,3 +43,28 @@ isFocus, }; } + +export function useTabRouteEnhance() { + const appStore = useAppStore(); + const { latestRoute } = storeToRefs(appStore); + + const router = Taro.useRouter(); + + Taro.useDidShow(() => { + const isTabbarPage = Object.values(TabBarPageRouter).some((x) => + latestRoute.value.toLowerCase().includes(x.toLowerCase()) + ); + if (isTabbarPage) { + Taro.reLaunch({ + url: router.path, + success() { + appStore.setLatestRoute(''); + }, + }); + } + }); + + Taro.useDidHide(() => { + appStore.setLatestRoute(router.path); + }); +} diff --git a/apps/taro/src/pages/home/index.vue b/apps/taro/src/pages/home/index.vue index 23f4464..1c09530 100644 --- a/apps/taro/src/pages/home/index.vue +++ b/apps/taro/src/pages/home/index.vue @@ -10,7 +10,7 @@ </template> <script setup lang="ts"> -import { useUser, useAccessLogin } from '@/hooks'; +import { useUser, useAccessLogin, useTabRouteEnhance } from '@/hooks'; import { useUserStore } from '@/stores/modules/user'; import Taro from '@tarojs/taro'; import IconLogo from '@/assets/home/icon-logo.png'; diff --git a/apps/taro/src/pages/mine/index.vue b/apps/taro/src/pages/mine/index.vue index 7022b2f..8068ee3 100644 --- a/apps/taro/src/pages/mine/index.vue +++ b/apps/taro/src/pages/mine/index.vue @@ -59,9 +59,9 @@ }); } -Taro.showShareMenu({ - showShareItems: ['shareAppMessage'], -}); +// Taro.showShareMenu({ +// showShareItems: ['shareAppMessage'], +// }); Taro.useShareAppMessage((res) => { return { diff --git a/apps/taro/src/stores/modules/app.ts b/apps/taro/src/stores/modules/app.ts new file mode 100644 index 0000000..019c588 --- /dev/null +++ b/apps/taro/src/stores/modules/app.ts @@ -0,0 +1,26 @@ +import { defineStore } from 'pinia'; +import { store } from '@/stores'; + +interface AppState { + latestRoute: string; +} + +export const useAppStore = defineStore({ + id: 'app-app', + + state: (): AppState => { + return { + latestRoute: '', + }; + }, + + actions: { + setLatestRoute(route: string) { + this.latestRoute = route; + }, + }, +}); + +export function useAppStoreHook() { + return useAppStore(store); +} diff --git a/packages/components/src/views/SelectPayTypeView/SelectPayTypeView.vue b/packages/components/src/views/SelectPayTypeView/SelectPayTypeView.vue index a343098..ddfea6b 100644 --- a/packages/components/src/views/SelectPayTypeView/SelectPayTypeView.vue +++ b/packages/components/src/views/SelectPayTypeView/SelectPayTypeView.vue @@ -118,8 +118,8 @@ state.msg = '璇峰湪鎵嬫満寰俊涓墦寮�'; state.show = true; } else { - state.msg = res.err_msg; - state.show = true; + // state.msg = res.err_msg; + // state.show = true; } } ); -- Gitblit v1.9.1