SuperAPI AI 工具集

tanstack-table-core-column-faceting

前端与建站

查看项目

更新于 10-16 00:02

技能介绍

用途:在 TanStack Table Core 中实现列分面筛选,为筛选控件提供可选项与计数。分面只负责派生筛选选项,不负责渲染控件。

主要能力:通过 columnFacetingFeature 启用分面;facetedRowModel 让分面响应表格其他生效筛选;facetedUniqueValues 提供离散值计数;facetedMinMaxValues 提供数值最小/最大值。

用法:需与 columnFilteringFeature、filteredRowModel 配合。注册时每个分面 getter 都需要对应的工厂槽位,例如 tableFeatures({ columnFilteringFeature, columnFacetingFeature, facetedRowModel: createFacetedRowModel(), facetedUniqueValues: createFacetedUniqueValues() })。读取计数用 table.getColumn('status')?.getFacetedUniqueValues() ?? new Map(),读取范围用 table.getColumn('age')?.getFacetedMinMaxValues()。离散控件用唯一值,数值区间用 min/max。单独导入的内置筛选函数需按约定键注册,列才能用字符串名引用;也可直接传函数。

限制:列分面会排除该列自身的筛选,同时应用其他筛选;服务端分页时客户端分面只能看到已加载数据,需改用服务端分面。具体 getter 与工厂返回类型可查看 node_modules/@tanstack/table-core/dist/features/column-faceting/。