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