From f0c79d64cd89142c951f2b909d76493a1dff97d0 Mon Sep 17 00:00:00 2001 From: yj <1336058017@qq.com> Date: Wed, 5 Mar 2025 13:39:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=93=E5=8C=85=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.js | 7 ++++--- preload.js | 4 ++++ src/App.tsx | 4 +++- src/components/Code/index.tsx | 11 +++-------- src/components/StupWizard/index.tsx | 2 +- src/components/UpdateModal/index.tsx | 9 ++------- src/page/Login/index.tsx | 4 +--- src/render.d.ts | 1 + src/utils/package/agora.ts | 2 +- src/utils/package/public.ts | 6 ++---- src/utils/request/index.ts | 3 +-- 11 files changed, 23 insertions(+), 30 deletions(-) diff --git a/main.js b/main.js index bfd6920..e087287 100644 --- a/main.js +++ b/main.js @@ -64,9 +64,6 @@ class AppWindow extends BrowserWindow { // this.loadFile(path.resolve(__dirname, './dist/index.html')) this.once('ready-to-show', () => { this.show(); - mainWindow.webContents.send('changeLocalStorage', { - env, - }); }); } } @@ -485,6 +482,10 @@ app.on('ready', () => { ipcMain.handle('getVersion', () => { return app.getVersion(); }); + // 获取环境 + ipcMain.handle('getEnv', () => { + return env; + }); // 获取窗口是否显示 ipcMain.handle('isVisible', () => { return mainWindow.isVisible(); diff --git a/preload.js b/preload.js index f3b9293..34b5281 100644 --- a/preload.js +++ b/preload.js @@ -51,6 +51,10 @@ window.electron = { getVersion: () => { return ipcRenderer.invoke('getVersion') }, + // 获取环境 + getEnv: () => { + return ipcRenderer.invoke('getEnv') + }, // 获取窗口是否显示 isVisible: () => { return ipcRenderer.invoke('isVisible') diff --git a/src/App.tsx b/src/App.tsx index d5b1bb7..31ca239 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -197,7 +197,7 @@ const App: React.FC = () => { document.addEventListener('keydown', (event) => { if (event.keyCode == 122) { event.preventDefault(); - } else if (((event.ctrlKey && event.keyCode == 82) || event.keyCode == 116) && storage.getItem('env') !== 'development') { + } else if (((event.ctrlKey && event.keyCode == 82) || event.keyCode == 116) && window.electron.getEnv() !== 'development') { event.preventDefault(); } }); @@ -288,6 +288,8 @@ const App: React.FC = () => { storage.removeItem('user') navigate('/login') } + } else if (e.key === 'env') { + } }; return ( diff --git a/src/components/Code/index.tsx b/src/components/Code/index.tsx index 4e25825..0d7f915 100644 --- a/src/components/Code/index.tsx +++ b/src/components/Code/index.tsx @@ -1,8 +1,7 @@ import ImageUrl from '@/utils/package/imageUrl'; import { Empty, Popover } from 'antd'; import { GetQrcode } from '@/api/Home/Index'; -import { memo, useImperativeHandle, forwardRef, useState, useEffect } from "react"; -import { storage } from '@/utils'; +import { memo, useImperativeHandle, forwardRef, useState } from "react"; const Code = forwardRef((props: any, ref: any) => { useImperativeHandle(ref, () => ({ getData: () => { @@ -10,19 +9,15 @@ const Code = forwardRef((props: any, ref: any) => { } })) const [baseImage, setBaseImage] = useState(''); - const [env, setEnv] = useState('') const [roomNum, setRoomNum] = useState(props.roomNum); - useEffect(() => { - setEnv(storage.getItem('env') as string) - }, []) return ( <> { setBaseImage('') - if (e && env) { - GetQrcode(roomNum, env === 'development' ? 'trial' : 'release').then(res => { + if (e) { + GetQrcode(roomNum, window.electron.getEnv() === 'development' ? 'trial' : 'release').then(res => { if (res.code === 200) { setBaseImage(res.data) } diff --git a/src/components/StupWizard/index.tsx b/src/components/StupWizard/index.tsx index 7cd49a1..2af4d4b 100644 --- a/src/components/StupWizard/index.tsx +++ b/src/components/StupWizard/index.tsx @@ -245,7 +245,7 @@ const VideoComponents = () => { }, [darkLightEnhancement]); useEffect(() => { if (typeof virtualBackground.sourceIndex === 'number') { - if (storage.getItem('env') === 'development') { + if (window.electron.getEnv() === 'development') { window.electron.getAppPath().then((res: string) => { const imagePath = path.join(res, 'src', 'assets', 'virtualBackground', `${virtualBackground.sourceIndex + 1}.png`); agora.enableVirtualBackground(virtualBackground.isVirtualBackground, { diff --git a/src/components/UpdateModal/index.tsx b/src/components/UpdateModal/index.tsx index 0f63b62..65b01c9 100644 --- a/src/components/UpdateModal/index.tsx +++ b/src/components/UpdateModal/index.tsx @@ -1,9 +1,8 @@ import styles from '@/components/UpdateModal/index.module.scss' -import { storage } from '@/utils'; import ImageUrl from '@/utils/package/imageUrl'; import { getUpdateUrl } from '@/utils/package/public'; import { Button, Flex, Modal, Progress } from 'antd'; -import { forwardRef, useImperativeHandle, useState, memo, useEffect } from "react"; +import { forwardRef, useImperativeHandle, useState, memo } from "react"; const UpdateModal = forwardRef((props: any, ref: any) => { useImperativeHandle(ref, () => ({ @@ -42,14 +41,10 @@ const UpdateModal = forwardRef((props: any, ref: any) => { } } })) - const [env, setEnv] = useState('') const [isUpdateModal, setIsUpdateModal] = useState(false); const [progress, setProgress] = useState(0); // 下载进度值 const [updateContent, setUpdateContent] = useState('') // 版本更新内容 - useEffect(() => { - setEnv(storage.getItem('env') as string) - }, []) function getContent() { fetch(`${getUpdateUrl()}/update.txt?t=${+new Date()}`) // 配置服务器地址 .then(async response => { @@ -95,7 +90,7 @@ const UpdateModal = forwardRef((props: any, ref: any) => { style={{ width: '100%', height: '40px', marginBottom: '10px' }} className={`m-ant-btn`} >立即更新 - {env === "development" ?
setIsUpdateModal(false)}>暂不更新
: null} + {window.electron.getEnv() === "development" ?
setIsUpdateModal(false)}>暂不更新
: null} : progress < 100 ?
下载进度:{progress}% diff --git a/src/page/Login/index.tsx b/src/page/Login/index.tsx index 9de96a3..c4a9ae0 100644 --- a/src/page/Login/index.tsx +++ b/src/page/Login/index.tsx @@ -40,7 +40,6 @@ const Login: React.FC = () => { roomNum: '', }) const [nameModal, setNameModal] = useState(false) - const [env, setEnv] = useState('') useEffect(() => { window.electron.setMainWindowSize({ @@ -48,7 +47,6 @@ const Login: React.FC = () => { height: 520, key: 'login' }) - setEnv(storage.getItem('env') as string) if (storage.getItem('login')) { const login = JSON.parse(storage.getItem('login') as string); const data = { @@ -203,7 +201,7 @@ const Login: React.FC = () => { <>
- {env ? : null} + {window.electron.getEnv() ? : null}
diff --git a/src/render.d.ts b/src/render.d.ts index 109b8e8..fcdbed6 100644 --- a/src/render.d.ts +++ b/src/render.d.ts @@ -27,6 +27,7 @@ export interface IElectronAPI { startLoad: () => any; updateHandle: () => any; getVersion: () => Promise; + getEnv: () => string; isVisible: () => Promise; setRegistry: (uuid: string) => any; getRegistry: () => any; diff --git a/src/utils/package/agora.ts b/src/utils/package/agora.ts index 364dd78..156fadc 100644 --- a/src/utils/package/agora.ts +++ b/src/utils/package/agora.ts @@ -125,7 +125,7 @@ export const agora = { if (settingData.darkLightEnhancement) agora.setLowlightEnhanceOptions(settingData.darkLightEnhancement.isDarkLightEnhancement, settingData.darkLightEnhancement) if (settingData.virtualBackground) { if (typeof settingData.virtualBackground.sourceIndex === 'number') { - if (storage.getItem('env') === 'development') { + if (window.electron.getEnv() === 'development') { window.electron.getAppPath().then((res: string) => { const imagePath = path.join(res, 'src', 'assets', 'virtualBackground', `${settingData.virtualBackground.sourceIndex + 1}.png`); agora.enableVirtualBackground(settingData.virtualBackground.isVirtualBackground, { diff --git a/src/utils/package/public.ts b/src/utils/package/public.ts index d7108da..5705ac6 100644 --- a/src/utils/package/public.ts +++ b/src/utils/package/public.ts @@ -59,8 +59,7 @@ export const storageSeeting: any = { } export const getUpdateUrl = () => { - let env = storage.getItem('env'); - switch (env) { + switch (window.electron.getEnv()) { case 'xy': return 'https://meeting-api.23544.com/meeting/xysz' case 'development': @@ -70,8 +69,7 @@ export const getUpdateUrl = () => { } } export const getTitle = () => { - let env = storage.getItem('env'); - switch (env) { + switch (window.electron.getEnv()) { case 'xy': return '湖北襄阳四中教研平台' case 'development': diff --git a/src/utils/request/index.ts b/src/utils/request/index.ts index 278f8b9..285faf9 100644 --- a/src/utils/request/index.ts +++ b/src/utils/request/index.ts @@ -1,10 +1,9 @@ import { AxiosRequestConfig, AxiosResponse } from 'axios' import Request from './request' import { constant } from '@/config' -import storage from '../package/storage' // 实例化 const req = new Request({ - baseURL: storage.getItem('env') === 'development' ? 'http://192.168.2.9:5192' : 'https://meeting-api.23544.com/pc', + baseURL: window.electron.getEnv() === 'development' ? 'http://192.168.2.9:5192' : 'https://meeting-api.23544.com/pc', timeout: constant.CONFIG_REQUEST_TIMEOUT_TIME as number, interceptors: { // 请求拦截器