首页 > 解决方案 > 如何清除反应表中的所有过滤器

问题描述

我正在使用 react-table v7 ( https://www.npmjs.com/package/react-table )。我能够过滤数据(引用自https://codesandbox.io/s/github/tannerlinsley/react-table/tree/master/examples/filtering),并且我正在对所有要过滤的列使用 SelectColumnFilter 函数。我想创建一个按钮来重置所有过滤器。就像如果我通过单击“全部重置”按钮将过滤器应用于 4 列,我希望清除所有过滤器。有人可以帮我吗?谢谢

标签: reactjsreact-table

解决方案


您可以从 useTable 实例中获取 setAllFilters 方法,然后

const { ...setAllFilters } = useTable({ columns, data }, userFilters)

// somewhere at you code
<button onClick={() => setAllFilters([])}>Reset</button>

在https://github.com/tannerlinsley/react-table/blob/master/docs/api/useFilters.md结帐 setAllFilters


推荐阅读