From dc98974db99a031fee6ac512fa32e3e1d6b01c98 Mon Sep 17 00:00:00 2001 From: JeremyWuuuuu <15975785+JeremyWuuuuu@users.noreply.github.com> Date: Wed, 27 Apr 2022 15:41:22 +0800 Subject: [PATCH] docs(components): [virtual-table] filtering (#7401) - Add example for adding filter. - Export header cell slot renderer interface. --- docs/en-US/component/table-v2.md | 10 ++ docs/examples/table-v2/filter.vue | 114 ++++++++++++++++++ packages/components/table-v2/index.ts | 2 + .../table-v2/src/renderers/header-cell.tsx | 3 +- 4 files changed, 128 insertions(+), 1 deletion(-) create mode 100644 docs/examples/table-v2/filter.vue diff --git a/docs/en-US/component/table-v2.md b/docs/en-US/component/table-v2.md index c60bd1420f..61f5c56221 100644 --- a/docs/en-US/component/table-v2.md +++ b/docs/en-US/component/table-v2.md @@ -88,3 +88,13 @@ It is recommended that you write your table component in JSX, since it contains table-v2/grouping-header ::: + +## Filter + +Virtualized Table providers customizing header renderers for rendering customized header, then we can use that to render filters + +:::demo + +table-v2/filter + +::: diff --git a/docs/examples/table-v2/filter.vue b/docs/examples/table-v2/filter.vue new file mode 100644 index 0000000000..e9b5e69e69 --- /dev/null +++ b/docs/examples/table-v2/filter.vue @@ -0,0 +1,114 @@ + + + + diff --git a/packages/components/table-v2/index.ts b/packages/components/table-v2/index.ts index 5070379a2d..c0c61a6e1d 100644 --- a/packages/components/table-v2/index.ts +++ b/packages/components/table-v2/index.ts @@ -9,3 +9,5 @@ export type { TableV2CustomizedHeaderSlotParam, } from './src/types' export * from './src/table' + +export type { HeaderCellSlotProps } from './src/renderers/header-cell' diff --git a/packages/components/table-v2/src/renderers/header-cell.tsx b/packages/components/table-v2/src/renderers/header-cell.tsx index 1c931592a4..6f11599b62 100644 --- a/packages/components/table-v2/src/renderers/header-cell.tsx +++ b/packages/components/table-v2/src/renderers/header-cell.tsx @@ -11,7 +11,7 @@ import type { UseTableReturn } from '../use-table' import type { TableV2Props } from '../table' import type { TableV2HeaderCell } from '../header-cell' -type HeaderCellRendererProps = TableV2HeaderRowCellRendererParams & +export type HeaderCellRendererProps = TableV2HeaderRowCellRendererParams & UnwrapNestedRefs> & Pick & { ns: UseNamespaceReturn @@ -94,3 +94,4 @@ const HeaderCellRenderer: FunctionalComponent = ( } export default HeaderCellRenderer +export type HeaderCellSlotProps = HeaderCellRendererProps & { class: string }