Я пытаюсь реализовать пользовательский интерфейс администратора на основе response-admin. Теперь у меня есть несколько ресурсов с одинаковыми критериями фильтрации. Как лучше всего синхронизировать фильтры для всех ресурсов?
Пытался установить filterDefaultValues, фильтры. Хотя пытался назначить один и тот же Filter-Component нескольким ресурсам.
Я действительно не знаю, как синхронизировать YourFilter с MyFilter. Ожидается: вы находитесь в MyData, установите фильтр на основе / apples. Вы переключаетесь на YourData, фильтр должен быть предварительно выбран.
Как это реализовать?
// in src/mydata.js
const MyFilter = (props) => (
<Filter {...props}>
<ReferenceInput label="Apple" source="appleid" reference="apples" allowEmpty alwaysOn>
<SelectInput optionText="applename" />
</ReferenceInput>
</Filter>
);
export const MyDataList = (props) => (
<List {...props} title="My Data" filters={<MyFilter />}>
<Datagrid>
// ...
</Datagrid>
</List>
);
// in src/yourdata.js
const YourFilter = (props) => (
<Filter {...props}>
<ReferenceInput label="Apple" source="appleid" reference="apples" allowEmpty alwaysOn>
<SelectInput optionText="applename" />
</ReferenceInput>
</Filter>
);
export const YourDataList = (props) => (
<List {...props} title="Your Data" filters={<YourFilter />}>
<Datagrid>
// ...
</Datagrid>
</List>
);
// in src/App.js
const App = () => (
<Admin dataProvider={dataProvider}>
<Resource name="MyData" list={MyDataList} />
<Resource name="YourData" list={YourDataList} />
</Admin>
);