import Taro from '@tarojs/taro';
|
import { TabBarPageRouterForCheck } from '@/constants';
|
import { useSystemStore } from '@/stores/modules/system';
|
import { useAppStore } from '@/stores/modules/app';
|
import { isInAlipay } from '@/utils/env';
|
import { useLifeRechargeContext } from '@life-payment/core-vue';
|
import { getRouterPath } from '@life-payment/utils';
|
|
export function useSwitchTab() {
|
const systemStore = useSystemStore();
|
|
const switchTab = (option: Taro.switchTab.Option) => {
|
const index = Object.values(TabBarPageRouterForCheck).findIndex((x) => option.url.includes(x));
|
console.log('index: ', index);
|
systemStore.setTabIndex(index);
|
Taro.switchTab(option);
|
};
|
return switchTab;
|
}
|
|
// export function useFirstEnter() {
|
// const systemStore = useSystemStore();
|
// const { isFirstEnter } = storeToRefs(systemStore);
|
// console.log('isFirstEnter: ', isFirstEnter);
|
|
// onMounted(() => {
|
// systemStore.setIsFirstEnter(false);
|
// });
|
|
// return { isFirstEnter };
|
// }
|
|
export function useFocus() {
|
const isFocus = ref(false);
|
|
Taro.useDidShow(() => {
|
isFocus.value = true;
|
});
|
|
Taro.useDidHide(() => {
|
isFocus.value = false;
|
});
|
|
return {
|
isFocus,
|
};
|
}
|
|
export function useTabRouteEnhance() {
|
const appStore = useAppStore();
|
const { latestRoute } = storeToRefs(appStore);
|
const { blLifeRecharge } = useLifeRechargeContext();
|
|
const router = Taro.useRouter();
|
|
const channelId = router.params?.channelId ?? '';
|
console.log('router.params: ', router);
|
|
Taro.useDidShow(() => {
|
const isTabbarPage = Object.values(TabBarPageRouterForCheck).some((x) =>
|
latestRoute.value.toLowerCase().includes(x.toLowerCase())
|
);
|
// if (blLifeRecharge.accountModel.channlesNum && !channelId) {
|
// Taro.reLaunch({
|
// // url: `${getRouterPath(router.path)}?channelId=${blLifeRecharge.accountModel.channlesNum}`,
|
// url: `${router.path}&channelId=${blLifeRecharge.accountModel.channlesNum}`,
|
// success() {
|
// appStore.setLatestRoute('');
|
// },
|
// });
|
// }
|
if (isTabbarPage && isInAlipay) {
|
Taro.reLaunch({
|
url: router.path,
|
success() {
|
appStore.setLatestRoute('');
|
},
|
});
|
}
|
});
|
|
Taro.useDidHide(() => {
|
appStore.setLatestRoute(router.path);
|
});
|
}
|