From 8a8ea1d6c2217d90c26fe0c523a1279b272cfc82 Mon Sep 17 00:00:00 2001 From: icssoa <615206459@qq.com> Date: Fri, 22 Aug 2025 00:20:57 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20cl-filter-bar=20=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E6=A0=8F=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- pages.json | 6 + pages/demo/data/filter-bar.uvue | 465 ++++++++++++++++++ pages/index/home.uvue | 5 + .../cl-filter-bar/cl-filter-bar.uvue | 17 + .../cl-filter-item/cl-filter-item.uvue | 169 +++++++ uni_modules/cool-ui/types/index.ts | 9 + 7 files changed, 672 insertions(+), 1 deletion(-) create mode 100644 pages/demo/data/filter-bar.uvue create mode 100644 uni_modules/cool-ui/components/cl-filter-bar/cl-filter-bar.uvue create mode 100644 uni_modules/cool-ui/components/cl-filter-item/cl-filter-item.uvue diff --git a/package.json b/package.json index 92a5c15..f89075a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cool-unix", - "version": "8.0.14", + "version": "8.0.15", "license": "MIT", "scripts": { "build-ui": "node ./uni_modules/cool-ui/scripts/generate-types.js", diff --git a/pages.json b/pages.json index b4cb81b..af8f6e6 100644 --- a/pages.json +++ b/pages.json @@ -310,6 +310,12 @@ "navigationBarTitleText": "Draggable 拖拽" } }, + { + "path": "data/filter-bar", + "style": { + "navigationBarTitleText": "FilterBar 筛选栏" + } + }, { "path": "status/badge", "style": { diff --git a/pages/demo/data/filter-bar.uvue b/pages/demo/data/filter-bar.uvue new file mode 100644 index 0000000..dc96e9c --- /dev/null +++ b/pages/demo/data/filter-bar.uvue @@ -0,0 +1,465 @@ + + + diff --git a/pages/index/home.uvue b/pages/index/home.uvue index 13a5966..0dd3cad 100644 --- a/pages/index/home.uvue +++ b/pages/index/home.uvue @@ -310,6 +310,11 @@ const data = computed(() => { label: t("拖拽"), icon: "drag-move-line", path: "/pages/demo/data/draggable" + }, + { + label: t("筛选栏"), + icon: "filter-line", + path: "/pages/demo/data/filter-bar" } ] }, diff --git a/uni_modules/cool-ui/components/cl-filter-bar/cl-filter-bar.uvue b/uni_modules/cool-ui/components/cl-filter-bar/cl-filter-bar.uvue new file mode 100644 index 0000000..7948dd6 --- /dev/null +++ b/uni_modules/cool-ui/components/cl-filter-bar/cl-filter-bar.uvue @@ -0,0 +1,17 @@ + + + + + diff --git a/uni_modules/cool-ui/components/cl-filter-item/cl-filter-item.uvue b/uni_modules/cool-ui/components/cl-filter-item/cl-filter-item.uvue new file mode 100644 index 0000000..cad95fc --- /dev/null +++ b/uni_modules/cool-ui/components/cl-filter-item/cl-filter-item.uvue @@ -0,0 +1,169 @@ + + + + + diff --git a/uni_modules/cool-ui/types/index.ts b/uni_modules/cool-ui/types/index.ts index 44ae7e8..2212cf7 100644 --- a/uni_modules/cool-ui/types/index.ts +++ b/uni_modules/cool-ui/types/index.ts @@ -172,3 +172,12 @@ export type ClFormValidateResult = { }; export type ClFormLabelPosition = "left" | "top" | "right"; + +export type ClFilterItemType = "switch" | "sort" | "select"; + +export type ClFilterItem = { + label: string; + value: any; + type: ClFilterItemType; + options?: ClSelectOption[]; +};