Merge branch 'master' into dev

This commit is contained in:
张成
2025-11-15 12:33:45 +08:00
7 changed files with 45 additions and 49 deletions

View File

@@ -5,6 +5,7 @@ import "./app.scss";
import "./scss/qweather-icons/qweather-icons.css";
import { useGlobalStore } from "./store/global";
import { removeStorage } from "./store/storage";
import { sceneRedirectLogic } from './utils/helper'
interface AppProps {
children: ReactNode;
@@ -17,25 +18,12 @@ function clearSpecStorage() {
class App extends Component<AppProps> {
onLaunch(options) {
console.log('launch options: ', options)
console.log("小程序启动,初始化逻辑写这里");
clearSpecStorage()
Taro.onNeedPrivacyAuthorization((resolve) => {
// 这里可以自定义弹窗(或直接默认同意)
resolve({ event: 'agree' }); // 同意隐私协议
});
// Taro.loadFontFace({
// family: 'Quicksand',
// source: 'url("https://bimwe.oss-cn-shanghai.aliyuncs.com/front/ball/other/57dc951f-f10e-45b7-9157-0b1e468187fd.ttf")',
// global: true, // 全局生效
// success(res) {
// console.log('字体加载成功', res);
// },
// fail(err) {
// console.error('字体加载失败', err);
// }
// })
}
componentDidMount() {
@@ -44,7 +32,9 @@ class App extends Component<AppProps> {
// this.getLocation()
}
componentDidShow() { }
componentDidShow(options) {
sceneRedirectLogic(options.query, options.path);
}
componentDidHide() { }

View File

@@ -18,7 +18,7 @@ import Participants from "./components/Participants";
import SupplementalNotes from "./components/SupplementalNotes";
import OrganizerInfo from "./components/OrganizerInfo";
import SharePopup from "./components/SharePopup";
import { navto, toast, useSceneRedirect } from "./utils/helper";
import { navto, toast } from "./utils/helper";
import ArrowLeft from "@/static/detail/icon-arrow-left.svg";
import Logo from "@/static/detail/icon-logo-go.svg";
import styles from "./index.module.scss";
@@ -37,8 +37,6 @@ function Index() {
const { statusNavbarHeightInfo } = useGlobalState();
const { statusBarHeight, navBarHeight } = statusNavbarHeightInfo;
useSceneRedirect("game_pages/detail/index");
const isMyOwn = userInfo.id === myInfo.id;
const sharePopupRef = useRef<any>(null);
@@ -254,4 +252,6 @@ function Index() {
);
}
export default withAuth(Index);
// export default withAuth(Index);
const ExportPage = withAuth(Index);
export default ExportPage;

View File

@@ -1,6 +1,4 @@
import Taro, {
useLoad,
} from "@tarojs/taro";
import Taro from "@tarojs/taro";
export function navto(url) {
Taro.navigateTo({
@@ -18,32 +16,6 @@ export function insertDotInTags(tags: string[]) {
return tags.join("-·-").split("-");
}
export const useSceneRedirect = (defaultPage: string) => {
useLoad((options) => {
if (options.scene) {
try {
const decoded = decodeURIComponent(options.scene || "");
const params: Record<string, string> = {};
decoded.split("&").forEach((pair) => {
const [key, value] = pair.split("=");
if (key) params[key] = value ? decodeURIComponent(value) : "";
});
// 拼接成 URL query
const query = Object.entries(params)
.map(([k, v]) => `${k}=${encodeURIComponent(v)}`)
.join("&");
Taro.redirectTo({
url: query ? `/${defaultPage}?${query}` : `/${defaultPage}`,
});
} catch (err) {
console.error("scene 解析失败:", err);
}
}
});
};
export function genNTRPRequirementText(min, max) {
if (min && max && min !== max) {
return `${min} - ${max} 之间`;

View File

@@ -24,6 +24,10 @@
padding: 20px;
box-sizing: border-box;
background-color: #fafafa;
.titleClassName {
color: #000;
}
}
.gameInfoContainer {

View File

@@ -16,6 +16,10 @@
width: 100%;
box-sizing: border-box;
.titleClassName {
color: #000;
}
.list {
height: 100%;
width: 100%;

View File

@@ -266,8 +266,8 @@ const OrderList = () => {
style={{ paddingTop: `${totalHeight + 8}px` }}
>
<GeneralNavbar
title="订单列表"
titlePosition="left"
title="球局订单"
backgroundColor="transparent"
titleClassName={styles.titleClassName}
className={styles.navbar}
/>

26
src/utils/helper.ts Normal file
View File

@@ -0,0 +1,26 @@
import Taro from "@tarojs/taro";
// 普通函数,不调用 useLoad
export const sceneRedirectLogic = (options, defaultPage: string) => {
if (!options.scene) return;
try {
const decoded = decodeURIComponent(options.scene || "");
const params: Record<string, string> = {};
decoded.split("&").forEach((pair) => {
const [key, value] = pair.split("=");
if (key) params[key] = value ? decodeURIComponent(value) : "";
});
const query = Object.entries(params)
.map(([k, v]) => `${k}=${encodeURIComponent(v)}`)
.join("&");
Taro.redirectTo({
url: query ? `/${defaultPage}?${query}` : `/${defaultPage}`,
});
} catch (e) {
console.error(e);
}
};