问题描述
import { Filter,SearchInput} from 'react-admin';
const CustomerFilter= props => (
<Filter {...props}>
<SearchInput source='id' resettable alwaysOn />
</Filter>
);
export default CustomerFilter;
这里实现了:
import CustomerFilter from './CustomerFilter';
[...]
return (
<List {...props} filters={ <CustomerFilter /> }>
结果的用户界面很棒 - 我可以在顶部看到一个搜索栏。搜索它会更改 URL,附加 ?filter=%7B"id"
等。但是,用户界面不会更新:只有我能看到的 URL 发生了变化。即使我输入 zzzzzz
。
有什么我遗漏的吗?
解决方法
检查浏览器 DevTools 的网络选项卡:您会看到 react-admin 将 id
过滤器发送到您的 API。它发送此过滤器的方式取决于您的 dataProvider
,但对于 ra-data-simple-rest
,它看起来像这样:
GET https://path/to/my/api/foo?id=123
您的 API 有责任使用这些查询参数来过滤结果。