提交 893594db 编写于 作者: K kwzm 提交者: 陈帅

optimize SecurityLayout (#5252)

上级 d19bc783
import React from 'react';
import { connect } from 'dva';
import { Redirect } from 'umi';
import { stringify } from 'querystring';
import { ConnectState, ConnectProps } from '@/models/connect';
import { CurrentUser } from '@/models/user';
import PageLoading from '@/components/PageLoading';
......@@ -34,11 +35,18 @@ class SecurityLayout extends React.Component<SecurityLayoutProps, SecurityLayout
render() {
const { isReady } = this.state;
const { children, loading, currentUser } = this.props;
if ((!currentUser.userid && loading) || !isReady) {
// You can replace it to your authentication rule (such as check token exists)
// 你可以把它替换成你自己的登录认证规则(比如判断 token 是否存在)
const isLogin = currentUser && currentUser.userid;
const queryString = stringify({
redirect: window.location.href,
});
if ((!isLogin && loading) || !isReady) {
return <PageLoading />;
}
if (!currentUser.userid) {
return <Redirect to="/user/login"></Redirect>;
if (!isLogin) {
return <Redirect to={`/user/login?${queryString}`}></Redirect>;
}
return children;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册