如何解决为什么反应管理员登录页面只显示一秒钟?
我用 react admin 建立了一个网站。现在我想添加来自 react admin 的基本登录页面。
为此,我添加了简单的 authProvider
,它传递所有用户名和密码组合。但是现在当我点击注销按钮时登录页面只显示一秒钟,然后网站总是跳回仪表板。
我尝试了很多,但找不到错误。 也许有人知道它可能是什么或以前遇到过同样的问题? 这是我来自 App.js 的代码片段:
function App() {
return(
<Admin
dashboard={Dashboard}
authProdiver={authProvider}
dataProvider={dataProvider}
customroutes={customroutes}
theme={theme}
layout={MyLayout}
>
<Resource
...
/>
...
</Admin>
);
}
export default App;
我添加了教程中的基本 authProvider
:
const authProvider = {
// authentication
login: ({ username }) => {
localStorage.setItem('username',username);
// accept all username/password combinations
return Promise.resolve();
},logout: () => {
localStorage.removeItem('username');
return Promise.resolve();
},checkerror: () => Promise.resolve(),checkAuth: () =>
localStorage.getItem('username') ? Promise.resolve() : Promise.reject(),getPermissions: () => Promise.reject('UnkNown method'),};
export default authProvider;
我自己的布局是:
MyLayout.js:
import React from 'react';
import TreeMenu from '@bb-tech/ra-treemenu';
import { Layout } from 'react-admin';
import MyAppBar from './MyAppBar';
import { ProfileProvider } from './MyProfile/Profile.js';
const MyLayout = (props) => (
<ProfileProvider>
<Layout {...props} appBar={MyAppBar} menu={TreeMenu} />
</ProfileProvider>
);
export default MyLayout;
MyAppBar.js:
import React from "react";
import { AppBar } from "react-admin";
import MyUserMenu from "./MyUserMenu";
const MyAppBar = props =>
<AppBar {...props}
userMenu={<MyUserMenu />}
/>;
export default MyAppBar;
MyUserMenu.js:
import React from 'react';
import { UserMenu,MenuItemLink} from 'react-admin';
import SettingsIcon from '@material-ui/icons/Settings';
const MyUserMenu = (props) => {
return (
<UserMenu {...props}>
<MenuItemLink
to="/my-profile"
primaryText="Mein Profil"
leftIcon={<SettingsIcon />}
/>
</UserMenu>
);
};
export default MyUserMenu;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。