From 0ab334402509a0b1f08476ce5a3b7905404b28a2 Mon Sep 17 00:00:00 2001 From: lizw-2015 <1183409807@qq.com> Date: Tue, 1 Jul 2025 10:39:49 +0800 Subject: [PATCH] =?UTF-8?q?feat(data-form):=20=E6=96=B0=E5=A2=9E=20Select?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E5=B9=B6=E6=9B=B4=E6=96=B0=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 Select 组件以支持下拉列表功能 - 在 DataFormConstant 中替换原有的 ElSelect 为自定义 Select - 在示例页面 DataForm01 中添加 Select 组件的使用 --- src/components/data-form/DataFormConstant.ts | 4 +- src/components/data-form/inputs/Select.vue | 96 ++++++++++++++++++++++++++++ src/pages/DataForm01.vue | 9 ++- 3 files changed, 106 insertions(+), 3 deletions(-) create mode 100644 src/components/data-form/inputs/Select.vue diff --git a/src/components/data-form/DataFormConstant.ts b/src/components/data-form/DataFormConstant.ts index c2dbf74..816963e 100644 --- a/src/components/data-form/DataFormConstant.ts +++ b/src/components/data-form/DataFormConstant.ts @@ -11,7 +11,6 @@ import { ElMention, ElRadio, ElRate, - ElSelect, ElSelectV2, ElSlider, ElSwitch, @@ -23,6 +22,7 @@ import { } from "element-plus"; import CheckboxGroup from "./inputs/CheckboxGroup.vue"; import RadioGroup from "./inputs/RadioGroup.vue"; +import Select from "./inputs/Select.vue"; import type { DisplayMode } from "./DataFormTypes.ts"; /** 内建的表单输入组件 */ @@ -34,7 +34,7 @@ const builtInInputComponents = { Radio: markRaw(ElRadio), RadioGroup: markRaw(RadioGroup), Switch: markRaw(ElSwitch), - Select: markRaw(ElSelect), + Select: markRaw(Select), SelectV2: markRaw(ElSelectV2), DatePicker: markRaw(ElDatePicker), TimePicker: markRaw(ElTimePicker), diff --git a/src/components/data-form/inputs/Select.vue b/src/components/data-form/inputs/Select.vue new file mode 100644 index 0000000..48b8ab7 --- /dev/null +++ b/src/components/data-form/inputs/Select.vue @@ -0,0 +1,96 @@ + + + + + diff --git a/src/pages/DataForm01.vue b/src/pages/DataForm01.vue index c906567..bb7023b 100644 --- a/src/pages/DataForm01.vue +++ b/src/pages/DataForm01.vue @@ -129,7 +129,14 @@ const dataForm1 = reactive({ inputProps: { placeholder: "请选择", clearable: true, - // TODO options + options: [ + { value: "001", label: "选项1" }, + { value: "002", label: "选项2" }, + { value: "003", label: "选项3" }, + { value: "004", label: "选项4" }, + { value: "005", label: "选项5" }, + { value: "006", label: "选项6" }, + ], }, }, {