如何解决如何在一些任意的反应应用程序中集成反应管理组件?
React admin 是一个很棒的工具,我想集成它的一部分,例如列表视图,在一些不是根级别的反应管理应用的反应应用中。
我创建了一个功能组件,并返回了一个带有一个资源的 react admin 包装器(必须添加它,因为我没有找到注册 dataProvider 的方法):
rw-r–r–
渲染组件时,它说“未找到:要么你输入了错误的 URL,要么你点击了一个错误的链接......”我猜这是因为 react admin 会根据 url 路径呈现视图。
>是否可以将资源的呈现与 url 路径解耦?
理想情况下,我会重用 SomeList 组件,注册数据提供者并跳过管理和资源。
解决方法
根据 React-admin 的文档,合并 <Admin>
和 <Resource>
(Documentation Link) 是完全可选的。
<Admin>
标签是让您的 react-admin 应用快速启动和运行的一种巧妙方式。
您可能正在寻找的是自定义应用路线。
此 link 清楚地指定了如何绕过 <Admin>
组件。
const App = () => (
<Provider
store={createAdminStore({
authProvider,dataProvider,history,})}
>
<AuthContext.Provider value={authProvider}>
<DataProviderContext.Provider value={dataProvider}>
</DataProviderContext.Provider>
</AuthContext.Provider>
</Provider>
);
export default withContext(
{
authProvider: PropTypes.object,},() => ({ authProvider })
)(App);
请注意,此示例仍使用 <Resource>
,因为此组件会延迟初始化资源数据的存储。
如果您打算使用 React-Admin 组件,那么这似乎是您要走的路。
另一件需要注意的事情是,核心的 React-Admin 与 Material UI 密切相关。所以你绝对可以使用 Material UI。
例如:您可以使用 List 组件。这些很容易使用,并且可以很容易地插入到你现有的 react-app 中。该文档也很棒,并提供了许多 CodeSandBox example。
guide 还指定了为提供灵活性而采取的步骤和措施,以及如何开始将其纳入您的项目。
作为在我组织的企业项目中从事过类似工作的人。这被证明是有帮助的,因为它使我们能够更轻松地即插即用,而不是遵循 React-Admin 提供的刚性。
,您可以尝试将您的资源包装在每个 https://marmelab.com/react-admin/CustomApp.html 的 <DataProviderContext.Provider value={dataProvider}>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。