在 /admin 下挂载 react-admin

Mount react-admin under /admin

我只是希望我所有的管理页面都在 /admin.

<Admin
  title="Admin"
  dashboard={Dashboard}
  dataProvider={restClient}
  history={history}
>
  <Resource
    name="users"
    list={UserList}
  />
</Admin>

我的主页位于 /admin,但是当我单击边栏中的用户时,它会将路径更改为 /users 而不是 /admin/users

我正在使用 react-admin 2.0.0.

react-router v4 需要一个 basename 道具来安排你想要的东西。更多信息 here.

不清楚 react-admin 是否为您提供了一种方法,至少我不知道。

关键实际上在传递给 Admin 组件的 history prop 中:

import createHistory from 'history/createBrowserHistory';

const history = createHistory({ basename: '/admin' });

<Admin history={history} />

我们不得不使用 nginx 并托管两个完全不同的应用程序来执行此操作。将 react-admin 与另一个已经使用 react-router 的应用程序集成似乎并不容易。文档提供了一些帮助,但文档通常也很难理解,因此我非常胆怯地复制和粘贴它的代码来尝试执行此操作。

总的来说,我对 react-admin 的使用时间越长,我就越感到沮丧;我认为这个项目有一些很棒的地方,但文档组织得不好,没有易于阅读的 API 参考,并且有很多漏洞抽象,你真的必须理解 material-ui、react-final-forms,当然还有 react-router 包,甚至可以通过 react-admin 'outside the box' 远程执行任何操作。

很抱歉发泄,但是,我的两分钱是,拆分应用程序或使用不同的工具。