如何在 react-admin 上实现忘记密码页面

Ale*_*aut 6 reactjs react-admin

我在react-admin上实现了一个仪表板。身份验证过程是按照本教程完成的。

现在我需要实现一个忘记密码的屏幕,但问题是这个屏幕需要在没有登录的情况下访问......

我想到了两种可能的方法来实现这一点:

  1. 理想情况下,我想配置 react-admin 以允许未经身份验证的访问特定路由。不确定如何执行此操作,或者是否可能...我发现此 Github 问题将此作为增强功能提及,但它没有解释如何解决该问题。
  2. 在反应中单独实现此屏幕并单独处理到此页面的路由。不确定如何在框架上执行此操作...

有人可以解释如何在框架上实现任一选项吗?

提前致谢,

Ale*_*aut 8

根据对Github 问题的评论,我最终基于简单示例实现了一种解决方法。

我所做的主要事情是使用 noLayout 选项添加一些自定义路由。由于我在文档中找不到的某种原因,这些自定义路由似乎没有通过身份验证。

所以,我重新定义了我的 App.js 文件:

const App = () => (
  <Admin
        loginPage={Login}
        authProvider={authProvider}
        dataProvider={dataProvider}
        i18nProvider={i18nProvider}
        title="Example Admin"
        locale="en"
        customReducers={{ tree }}
        customRoutes={[
            <Route exact path="/forgotPassword" component={ForgotPassword} noLayout/>,
            <Route exact path="/resetPassword" component={ResetPassword} noLayout/>,
        ]}
    >
        {permissions => [
            <Resource name="users" {...users} />,
        ]}
  </Admin>
);
Run Code Online (Sandbox Code Playgroud)

无论如何,这是我想出的解决方案,不确定它是否正确。如果你找到更好的东西,请告诉我。