如果我有多个不同的REST API后端(单独的应用程序执行不同的事情),我想要一个能够对由这些不同后端管理的实体进行CRUD的UI(基于反应管理员的)应用程序,我'好奇,如果有可能连接react-admin来做到这一点。
我想象的不是这个(单/全局dataProvider):
const App = () => (
<Admin dataProvider={simpleRestProvider('http://path.to.foo.api')}>
<Resource name="foos" list={FooList} />
</Admin>
);
我们可以做这样的事情(特定于资源的dataProviders):
const App = () => (
<Admin >
<Resource name="foos" list={FooList}
dataProvider={simpleRestProvider('http://path.to.foo.api')} />
<Resource name="bars" list={BarList}
dataProvider={simpleRestProvider('http://path.to.bar.api')} />
</Admin>
);
无论如何,如果你有关于如何在react-admin中为多个后端做REST的建议,我会非常感激。
不,但您可以拥有一个超级dataProvivder,它可以根据资源选择合适的一个。就像是:
const dataProviders = [
{ dataProvider: simpleRestProvider('http://path.to.foo.api'), resources: ['foos'] },
{ dataProvider: simpleRestProvider('http://path.to.bar.api'), resources: ['bars'] },
];
export default (type, resource, params) => {
const dataProvider = dataProviders.find(dp => dp.resources.includes(resource));
return dataProvider(type, resource, params);
}