Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对共享同一资源的两个列表使用不同的筛选器_Javascript_Reactjs_React Redux_React Router_React Admin - Fatal编程技术网

Javascript 对共享同一资源的两个列表使用不同的筛选器

Javascript 对共享同一资源的两个列表使用不同的筛选器,javascript,reactjs,react-redux,react-router,react-admin,Javascript,Reactjs,React Redux,React Router,React Admin,我在寻找一个简单问题的解决方案。 为了保持一致性,React管理框架在redux中提供了一个“缓存”,用于在每个路由上为特定资源保留过滤器 案例: 我有一页资源“用户”。 我有另一个实体的页面,比如说“组”。 要将用户添加到此组,我有一个按钮,可以打开一个(对话框),其中显示整个用户列表,并希望可以自由访问此元素上的过滤器 问题: 当我在用户页面上更新过滤器时,过滤器存储在Redux中。 当我在其他页面中打开模式时,le用户列表将与存储的过滤器一起显示 我的目标: 将这两组过滤器分开 或 不要在

我在寻找一个简单问题的解决方案。 为了保持一致性,React管理框架在redux中提供了一个“缓存”,用于在每个路由上为特定资源保留过滤器

案例: 我有一页资源“用户”。 我有另一个实体的页面,比如说“组”。 要将用户添加到此组,我有一个按钮,可以打开一个(对话框),其中显示整个用户列表,并希望可以自由访问此元素上的过滤器

问题: 当我在用户页面上更新过滤器时,过滤器存储在Redux中。 当我在其他页面中打开模式时,le用户列表将与存储的过滤器一起显示

我的目标: 将这两组过滤器分开 或 不要在Redux中存储筛选器状态 或 在打开模式和关闭模式时重置过滤器

我发现这个话题: 但我不明白必须覆盖哪些组件。我的另一个问题是,我有第二个模态,其中有另一个模态,比如说“FanClub”。当我更改两个模式列表之一中的过滤器时,它会更新URL中的
?filter=…
参数,导致第二个模式打开,其中的过滤器无法应用于此“FanClub”实体


以前是否有人遇到过此问题?

在模式资源上,使用前缀资源名称,例如模式:用户,然后使用修剪前缀的代理数据提供程序


v2

consttrimmerdataprovider=>dataProvider=>(类型、资源、参数)=>{
返回数据提供程序(类型,resource.replace('modal:',''),参数)
}
v3

consttrimmerdataprovider=dataProvider=>({
…数据提供者,
getList:(resource,params)=>dataProvider(resource.replace('modal:',''),params)
})
这样,用户列表和模式过滤器将存储在不同的键上

请注意,您必须将资源声明为管理子级,以允许ra初始化redux存储