Reactjs Rest上的管理-引用字段进行多个查询,而不是像文档中那样进行重复数据消除查询
我正在创建一个编辑器字段,显示一些帖子 代码如下Reactjs Rest上的管理-引用字段进行多个查询,而不是像文档中那样进行重复数据消除查询,reactjs,admin-on-rest,Reactjs,Admin On Rest,我正在创建一个编辑器字段,显示一些帖子 代码如下 export const EditorView = (props) => { return ( <List {...props} title="Fresh Tales"> <Datagrid> <TextField source="id" /> <TextField source="text" /> <Referen
export const EditorView = (props) => {
return (
<List {...props} title="Fresh Tales">
<Datagrid>
<TextField source="id" />
<TextField source="text" />
<ReferenceField label="Writer" source="writerId" reference="writers">
<TextField source="name" />
</ReferenceField>
</Datagrid>
</List>
)
}
这似乎相当沉重和浪费。将每个writer加载到视图是一个新请求。不知道是我错了还是文件错了 您看到一个
选项
和一个获取
请求的事实是CORS(跨源资源共享-谷歌这个术语)的影响,如果您的API和管理员不在同一个域中,这是正常的
如果您的API支持将所有调用分组为一个调用,那么您有责任在restClient
中进行分组
您可能正在使用一个自定义REST客户端,或者使用不支持此选项的jsonServerRestClient
例如,下面是如何完成的:
您看到一个
选项
和一个获取
请求的事实是CORS(跨源资源共享-谷歌这个术语)的一种效果,如果您的API和管理员不在同一个域中,这是正常的
如果您的API支持将所有调用分组为一个调用,那么您有责任在restClient
中进行分组
您可能正在使用一个自定义REST客户端,或者使用不支持此选项的jsonServerRestClient
例如,下面是如何完成的:
非常感谢您抽出时间回答。我一直在使用jsonServerRestClient,它正在复制查询。进入代码,他们明确表示他们的模拟服务不支持GET_Many感谢您花时间回答。我一直在使用jsonServerRestClient,它正在复制查询。在代码中,他们明确表示他们的模拟服务不支持GET\u MANY
OPTIONS /tales?_sort=ID&_order=ASC&_start=0&_end=10 204 0.168 ms - -
GET /tales?_sort=ID&_order=ASC&_start=0&_end=10 304 2.130 ms - -
OPTIONS /writers/312 204 0.148 ms - -
OPTIONS /writers/314 204 0.153 ms - -
OPTIONS /writers/316 204 0.190 ms - -
OPTIONS /writers/318 204 0.226 ms - -
OPTIONS /writers/320 204 0.116 ms - -
OPTIONS /writers/322 204 0.118 ms - -
OPTIONS /writers/324 204 0.142 ms - -
OPTIONS /writers/330 204 0.135 ms - -
OPTIONS /writers/340 204 0.122 ms - -
OPTIONS /writers/350 204 0.129 ms - -
GET /writers/312 304 1.769 ms - -
GET /writers/314 304 0.884 ms - -
GET /writers/316 304 4.023 ms - -
GET /writers/318 304 2.928 ms - -
GET /writers/320 304 0.759 ms - -
GET /writers/322 304 1.126 ms - -
GET /writers/324 304 1.040 ms - -
GET /writers/330 304 1.687 ms - -
GET /writers/340 304 0.653 ms - -
GET /writers/350 304 0.771 ms - -
case GET_MANY: {
const query = {
filter: JSON.stringify({ id: params.ids }),
};
url = `${apiUrl}/${resource}?${queryParameters(query)}`;
break;
}