在没有任何资源的情况下显示仪表板
Show the dashboad without any resources
如果用户没有任何权限来显示 react-admin 的资源,他将无法登录,并且会收到此消息:
React-admin is properly configured.
Now you can add a first <Resource> as child of <Admin>
我们如何在没有资源的情况下显示登录页面和仪表板?
const App = ({ classes }) => (
<React.Fragment>
<Admin
locale="fr"
i18nProvider={i18nProvider}
customReducers={{ reducer, theme: themeReducer }}
customRoutes={customRoutes}
appLayout={MyLayout}
authProvider={authProvider}
dashboard={Dashboard}
loginPage={MyLoginForm}
dataProvider={dataProvider}
>
{permissions => [
hasRight(permissions, 'resource') ?
<Resource name="Myresource"
list={MyresourceList}
show={hasRight(permissions, 'show') ? MyresourceShow : null}
create={hasRight(permissions, 'create') ? MyresourceCreate : null}
edit={hasRight(permissions, 'edit') ? MyresourceEdit : null}
/>
: null,
]}
</Admin>
</React.Fragment>
)
当然,此消息应该仅用于调试。
我在 React Admin 上开了一个问题:https://github.com/marmelab/react-admin/issues/2749
同时,您可以在呈现管理组件之前复制在 authProvider
中完成的检查。
const App = () => {
if (userHasNotAccess) {
return <ErrorPage />;
}
return (
<Admin {...props}>
{/* ... */}
</Admin>
);
};
如果用户没有任何权限来显示 react-admin 的资源,他将无法登录,并且会收到此消息:
React-admin is properly configured.
Now you can add a first <Resource> as child of <Admin>
我们如何在没有资源的情况下显示登录页面和仪表板?
const App = ({ classes }) => (
<React.Fragment>
<Admin
locale="fr"
i18nProvider={i18nProvider}
customReducers={{ reducer, theme: themeReducer }}
customRoutes={customRoutes}
appLayout={MyLayout}
authProvider={authProvider}
dashboard={Dashboard}
loginPage={MyLoginForm}
dataProvider={dataProvider}
>
{permissions => [
hasRight(permissions, 'resource') ?
<Resource name="Myresource"
list={MyresourceList}
show={hasRight(permissions, 'show') ? MyresourceShow : null}
create={hasRight(permissions, 'create') ? MyresourceCreate : null}
edit={hasRight(permissions, 'edit') ? MyresourceEdit : null}
/>
: null,
]}
</Admin>
</React.Fragment>
)
当然,此消息应该仅用于调试。 我在 React Admin 上开了一个问题:https://github.com/marmelab/react-admin/issues/2749
同时,您可以在呈现管理组件之前复制在 authProvider
中完成的检查。
const App = () => {
if (userHasNotAccess) {
return <ErrorPage />;
}
return (
<Admin {...props}>
{/* ... */}
</Admin>
);
};