diff --git a/src/App.tsx b/src/App.tsx index 865745a..748d007 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -43,6 +43,7 @@ const App: React.FC = () => { }).then(async (res) => { if (res.code === 200) { storage.setItem('user', JSON.stringify(res.data)) + storage.setItem('userLogin', true) toSrc('/home') await startSignalr() } else { @@ -199,6 +200,7 @@ const App: React.FC = () => { switch (path) { case '/login': storage.removeItem('user') + storage.setItem('userLogin', false) navigate('/login') break; case '/home': @@ -229,6 +231,10 @@ const App: React.FC = () => { if (Boolean(e.value)) { onEventSignalr() } + } else if (e.key === 'userLogin') { + if (!Boolean(e.value)) { + navigate('/login') + } } }; diff --git a/src/components/JoinSetting/index.tsx b/src/components/JoinSetting/index.tsx index 4c4a829..f10644e 100644 --- a/src/components/JoinSetting/index.tsx +++ b/src/components/JoinSetting/index.tsx @@ -84,6 +84,7 @@ const JoinSetting = forwardRef((_props: any, ref: any) => { await PostRefresh(user.refresh_token).then(res => { if (res.code === 200) { storage.setItem('user', JSON.stringify(res.data)) + storage.setItem('userLogin', true) callBack(res.data) } }) diff --git a/src/page/Home/Index/index.tsx b/src/page/Home/Index/index.tsx index 70b67d0..7e57f57 100644 --- a/src/page/Home/Index/index.tsx +++ b/src/page/Home/Index/index.tsx @@ -83,6 +83,7 @@ const Index: React.FC = () => { await PostRefresh(user.refresh_token).then(res => { if (res.code === 200) { storage.setItem('user', JSON.stringify(res.data)) + storage.setItem('userLogin', true) callBack(res.data) } }) diff --git a/src/page/Home/index.tsx b/src/page/Home/index.tsx index 125d703..219635a 100644 --- a/src/page/Home/index.tsx +++ b/src/page/Home/index.tsx @@ -139,8 +139,8 @@ const Home: React.FC = () => { title="提示" description="确认退出吗?" onConfirm={() => { - navigate('/login') storage.removeItem('user') + storage.setItem('userLogin', false) }} onCancel={() => { diff --git a/src/page/Login/index.tsx b/src/page/Login/index.tsx index cce9695..f46fdf5 100644 --- a/src/page/Login/index.tsx +++ b/src/page/Login/index.tsx @@ -140,6 +140,7 @@ const Login: React.FC = () => { optionsValue: operation.optionsValue, })) storage.setItem('user', JSON.stringify(res.data)) + storage.setItem('userLogin', true) try { window.electron.setMainWindowSize({ width: 1200, diff --git a/src/utils/request/request.ts b/src/utils/request/request.ts index 9f6ca8e..b1747f5 100644 --- a/src/utils/request/request.ts +++ b/src/utils/request/request.ts @@ -113,7 +113,7 @@ class Request { } function toLogin() { storage.removeItem('user') - location.href = location.origin + '/#/login' + storage.setItem('userLogin', false) } function updatePostRefresh() { let user = JSON.parse(storage.getItem('user') as string); @@ -121,6 +121,7 @@ function updatePostRefresh() { PostRefresh(user.refresh_token).then((res) => { if (res.code == 200) { storage.setItem('user', JSON.stringify(res.data)) + storage.setItem('userLogin', true) } else { toLogin() }