فهرست منبع

修改 只监听 lang 和nick

zhejiushizhuce 2 سال پیش
والد
کامیت
82367c51a4
2فایلهای تغییر یافته به همراه39 افزوده شده و 21 حذف شده
  1. 16 6
      src/features/mainSlice.js
  2. 23 15
      src/widgets/WSport/index.jsx

+ 16 - 6
src/features/mainSlice.js

@@ -332,7 +332,10 @@ const parseLogin=(state,action,arg,isShowMsg=true)=>{
         }
         if (arg){
             if (arg.DefaultLanguage!=null)data.lang=arg.DefaultLanguage;
-            if (arg.ThemeColor!=null)data.theme=arg.ThemeColor;
+            else
+            {
+                if (state.userInfo!=null&&state.userInfo.lang!=null)data.lang=state.userInfo.lang;
+            }
         }
         state.userInfo=data;
         state.isLogin=1;
@@ -914,14 +917,21 @@ export const getUserBBToken=(state)=>{
     }
     return token;
 }
-export const getUserThemeAndLang=(state)=>{
-    let data={};
+export const getUserLang=(state)=>{
+    let lang="";
     let userInfo=state.main.userInfo;
     if (userInfo){
-        data.lang=userInfo.lang;
-        data.theme=userInfo.theme;
+        lang=userInfo.lang;
     }
-    return data;
+    return lang;
+}
+export const getUserNick=(state)=>{
+    let nick="";
+    let userInfo=state.main.userInfo;
+    if (userInfo){
+        nick=userInfo.NickName;
+    }
+    return nick;
 }
 //数据获取
 export default Main.reducer;

+ 23 - 15
src/widgets/WSport/index.jsx

@@ -2,7 +2,14 @@ import styles from './styles.module.scss'
 import {useEffect, useRef, useState} from "react";
 import {useThemeProvider} from "@contexts/themeContext";
 import {useDispatch, useSelector} from "react-redux";
-import {getBBConf, getUserBBToken, getUserID, getUserInfo, getUserThemeAndLang} from "@features/mainSlice";
+import {
+    getBBConf,
+    getUserBBToken,
+    getUserID,
+    getUserInfo, getUserLang, getUserNick,
+    getUserNickAndLang,
+    getUserThemeAndLang
+} from "@features/mainSlice";
 import {APP_THEME} from "@constants/app";
 import {useLocation, useNavigate} from "react-router-dom";
 import {ROUTE_PATH} from "@constants/routes";
@@ -25,7 +32,8 @@ const WSport=({})=>{
     const tempSPath=pathname.startsWith(ROUTE_PATH.RACING)?"/horse-racing-55":"/";
     const [sportPath,setSportPath]=useState(tempSPath);
     const btToken=useSelector(getUserBBToken);
-    const userThemeLang=useSelector(getUserThemeAndLang);
+    const userLang=useSelector(getUserLang);
+    const userNick=useSelector(getUserNick);
     const refreshToken=async ()=>{
         return new Promise((resolve, reject) => {
             dispatch(reqGameInfo()).then(({payload})=>{
@@ -130,18 +138,18 @@ const WSport=({})=>{
             },20);
         }
     },[hash])
-    // useEffect(()=>{
-    //     if (objInfo.bt){
-    //         if (bbConf==null)return null;
-    //         let bbtheme=bbConf.theme;
-    //         let themeIndex=0;
-    //         if (theme===APP_THEME.LIGHT)themeIndex=1;
-    //         let themeName=bbtheme[themeIndex];
-    //         objInfo.bt.updateOptions({
-    //             themeName:themeName
-    //         })
-    //     }
-    // },[theme])
+    useEffect(()=>{
+        if (objInfo.bt){
+            if (bbConf==null)return null;
+            let bbtheme=bbConf.theme;
+            let themeIndex=0;
+            if (theme===APP_THEME.LIGHT)themeIndex=1;
+            let themeName=bbtheme[themeIndex];
+            objInfo.bt.updateOptions({
+                themeName:themeName
+            })
+        }
+    },[theme])
     // useEffect(()=>{
     //     if (objInfo.bt){
     //         objInfo.bt.updateOptions({
@@ -156,7 +164,7 @@ const WSport=({})=>{
             clearBT();
             clearTimer();
         }
-    },[userID,userThemeLang])
+    },[userID,userLang,userNick])
     //,theme,language
     return (
         <div id="betby" className={`${styles.container} ${isMobile()?styles.container_m:''}`}></div>