From 285f34a71b049b40d86adf2fc50427ae6ff203b6 Mon Sep 17 00:00:00 2001 From: Tevin <tingquanren@163.com> Date: Sat, 04 Feb 2023 09:28:55 +0800 Subject: [PATCH] 用户签名组件,按钮版 --- forms/form/CFormItem.vue | 43 ++++++++++++++++++++++--------------------- 1 files changed, 22 insertions(+), 21 deletions(-) diff --git a/forms/form/CFormItem.vue b/forms/form/CFormItem.vue index 3913dc1..f9fe496 100644 --- a/forms/form/CFormItem.vue +++ b/forms/form/CFormItem.vue @@ -37,6 +37,8 @@ // transform (value) => any 将字段值转换成目标值后进行校验 // message string 错误信息,不设置时会通过模板自动生成 rules: Array, + // 表单是否禁用 + disabled: Boolean, }, data() { return { @@ -50,6 +52,7 @@ name: this.name, label: this.label, required: this.isRequired, + disabled: this.disabled, error: this.error, onChange: evt => this.onChange(evt), }; @@ -97,31 +100,29 @@ }, mounted() { this.$nextTick(() => { - // 未设置验证 - if (!this.required && !this.rules) { - this.formRes.$regItemValidator(this.name, validateType => { + let errTimer = null; + // 注册验证 + this.formRes.$regItemValidator(this.name, validateType => { + // 未设置验证 + if (!this.required && !this.rules) { this.error = false; return Promise.resolve({ name: this.name, passed: true, }); - }); - } else { - // 验证规则 - const descriptor = this.rules || []; - if (this.required) { - descriptor.unshift({ - required: true, + } else { + // 验证规则 + const descriptor = this.rules || []; + if (this.required) { + descriptor.unshift({ + required: true, + }); + } + const validator = new Schema({ + [this.name]: descriptor, }); - } - const validator = new Schema({ - [this.name]: descriptor, - }); - // 汉化通用验证消息 - validator.messages(validateMsgs); - // 注册验证 - let errTimer = null; - this.formRes.$regItemValidator(this.name, validateType => { + // 汉化通用验证消息 + validator.messages(validateMsgs); return validator .validate({ [this.name]: this.formRes.formData[this.name], @@ -152,8 +153,8 @@ }; } ); - }); - } + } + }); }); }, beforeDestroy() { -- Gitblit v1.9.1