From a1dfc1313e0bf9647c7d3a4046d62cf242177276 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期四, 13 三月 2025 16:34:29 +0800 Subject: [PATCH] fix: 二期需求 --- apps/taro/src/utils/page.ts | 32 ++++++++++++++++++++++++++++++++ 1 files changed, 32 insertions(+), 0 deletions(-) diff --git a/apps/taro/src/utils/page.ts b/apps/taro/src/utils/page.ts index 8670a6f..1652ec0 100644 --- a/apps/taro/src/utils/page.ts +++ b/apps/taro/src/utils/page.ts @@ -1,6 +1,8 @@ import { TabBarPageRouter } from '@/constants'; import Taro from '@tarojs/taro'; import { useSystemStoreWithOut } from '@/stores/modules/system'; +import { query2object, object2query } from '@life-payment/utils'; +import { blLifeRecharge } from './blLifeRecharge'; export function goBack(delta = 1) { const pages = Taro.getCurrentPages(); @@ -23,3 +25,33 @@ url: TabBarPageRouter['Home'], }); } + +export function pathAddExtraParam(path: string, object: Record<string, string | number>) { + console.log('path: ', path, object); + const pathList = path.split('?'); + if (pathList.length > 1) { + const query = query2object(pathList[1]); + for (const key in object) { + query[key] = object[key] as any; + } + return `${pathList[0]}?${object2query(query)}`; + } else { + return `${pathList[0]}?${object2query(object)}`; + } +} + +export class RouteHelper { + static switchTab(option: Taro.switchTab.Option) { + return Taro.switchTab({ + ...option, + url: pathAddExtraParam(option.url, { channelId: blLifeRecharge.accountModel.channlesNum }), + }); + } + + static navigateTo(option: Taro.navigateTo.Option) { + Taro.navigateTo({ + ...option, + url: pathAddExtraParam(option.url, { channelId: blLifeRecharge.accountModel.channlesNum }), + }); + } +} -- Gitblit v1.9.1