From 80493dd9004cd415e6fd6c64b277d7ed0039bee6 Mon Sep 17 00:00:00 2001 From: lvhuaisheng Date: Wed, 27 Jul 2022 18:02:30 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E5=9F=BA=E6=9C=AC=E8=A7=A6=E5=8F=91=E4=BA=8B=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/naiveui/FormDesign.vue | 12 ++- .../components/design/DesignConfig.vue | 86 +++++++++++++++++++ .../naiveui/components/design/DesignForm.vue | 1 + .../components/design/DesignFormItem.vue | 18 +++- .../components/generate/GenerateForm.vue | 1 + .../components/generate/GenerateFormItem.vue | 9 +- src/components/naiveui/config/naiveui.ts | 37 +++++++- src/components/naiveui/mixins/eventMixin.js | 31 +++++++ src/components/naiveui/styles/index.less | 6 ++ 9 files changed, 191 insertions(+), 10 deletions(-) create mode 100644 src/components/naiveui/mixins/eventMixin.js diff --git a/src/components/naiveui/FormDesign.vue b/src/components/naiveui/FormDesign.vue index 4a4b2cf..6b5f9aa 100644 --- a/src/components/naiveui/FormDesign.vue +++ b/src/components/naiveui/FormDesign.vue @@ -248,10 +248,20 @@ export default defineComponent({ }, setup() { const message = useMessage() + + let widgetForm = JSON.parse(JSON.stringify(naiveui.widgetForm)); + for (let key in naiveui.widgetForm) { + if (naiveui.widgetForm.hasOwnProperty(key)) { + if(typeof naiveui.widgetForm[key] === 'function') { + widgetForm[key] = naiveui.widgetForm[key]; + } + } + } + const state = reactive({ naiveui, codeType: CodeType, - widgetForm: JSON.parse(JSON.stringify(naiveui.widgetForm)), + widgetForm: widgetForm, widgetFormSelect: undefined, generateFormRef: null as any, configTab: 'widget', diff --git a/src/components/naiveui/components/design/DesignConfig.vue b/src/components/naiveui/components/design/DesignConfig.vue index 611dc29..2c6ad2b 100644 --- a/src/components/naiveui/components/design/DesignConfig.vue +++ b/src/components/naiveui/components/design/DesignConfig.vue @@ -22,6 +22,19 @@ + + + + 使用示例 + 动态禁用/启用 + 动态赋值 + 必填项修改 + Label动态显隐 + + (提示:仅支持Javascript语法) + +
function {{eventType}}(e,view,form){ + + + e:naiveui组件的对应事件入参(如input传入的将是change后的value)
+ view:视图组件信息(详细信息查看src/components/naiveui/config/naiveui.ts)
+ form:表单信息 +
+
+ +
}
+