提交 1186afb0 作者: ZhangLingKun

功能:未登录跳转

上级 7c4bd79a
import React from 'react';
import { RouterProvider } from 'react-router-dom';
import './assets/style/App.scss';
import { router } from './router';
import PrivateRouter from '~/router/privateRouter';
const App = () => (
<>
<RouterProvider router={router} />
<PrivateRouter />
</>
);
......
......@@ -31,7 +31,7 @@ function LoginView() {
});
if (res && res.code === '200') {
const { token } = res.result;
Cookies.set('SXTB-TOKEN', token);
await Cookies.set('SHAREFLY_TOKEN', token);
// 记住密码
Cookies.set('password', values?.passWord);
Cookies.set('username', values?.accountNo);
......@@ -40,7 +40,7 @@ function LoginView() {
dispatch(SET_USERINFO(res.result));
// 获取用户的权限
await getUserRole();
// console.log('提交数据 --->', res, values);
// console.log('SXTB_TOKEN --->', Cookies.get('SXTB-TOKEN'));
} else {
message.error('登录失败,请检查账号信息');
}
......
import { router } from '~/router/index';
import { RouterProvider } from 'react-router-dom';
import { useEffect } from 'react';
import Cookies from 'js-cookie';
function PrivateRouter() {
// 路由钩子
// const location = useLocation();
// 在切换路由之前判断
const beforeEach = () => {
// TODO: 判断是否登录 (需要改为实时获取地址栏的路由)
const path = location.pathname;
const token = Cookies.get('SHAREFLY_TOKEN');
if (!token && path !== '/login') {
location.replace('/login');
return;
}
};
useEffect(() => {
beforeEach();
}, [location.pathname]);
return <RouterProvider router={router} />;
}
export default PrivateRouter;
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论