Просмотр исходного кода

1418 表单单选组件功能调整

cyy 2 лет назад
Родитель
Сommit
a5fb10570d

+ 4 - 0
src/business/platform/form/formbuilder/constants/helpTip.js

@@ -107,6 +107,10 @@ export default {
     如果填写者在提交表单时必填字段没有输入,系统将会给出相关错误提示,表单将无法提交。</br>
     该属性常用于需要强制填写者必须输入的字段。`
   },
+  uncheck: {
+    title: '关于是否可取消勾选校验',
+    content: `勾选后,该字段将允许不选择任何选项。`
+  },
   minLength: {
     title: '关于最少填写字符',
     content: '系统会限制填写者填写此字段的最少字符。'

+ 3 - 0
src/business/platform/form/formbuilder/right-aside/editors/editor-rules.vue

@@ -7,6 +7,9 @@
         <div v-if="types.includes('required')" class="el-form-item__content">
           <el-checkbox v-model="fieldOptions.required">必填</el-checkbox><help-tip prop="required" />
         </div>
+        <div v-if="types.includes('uncheck')" class="el-form-item__content">
+          <el-checkbox v-model="fieldOptions.uncheck">是否可取消勾选</el-checkbox><help-tip prop="uncheck" />
+        </div>
         <!-- // - 数字类型 -->
         <template v-if="types.includes('number')">
           <div class="el-form-item__content">

+ 1 - 0
src/business/platform/form/formbuilder/right-aside/field-types/ibps-field-radio.vue

@@ -16,6 +16,7 @@
       <!-- 校验规则 -->
       <editor-rules
         :field-item="fieldItem"
+        types="uncheck,required"
       />
       <!-- 字段权限 -->
       <editor-rights

+ 1 - 1
src/business/platform/form/formrender/dynamic-form/dynamic-form-field.vue

@@ -998,7 +998,7 @@ export default {
     },
     methods: {
         handleRadioChange (val) {
-            if (this.dataModel === val) {
+            if (this.dataModel === val && this.fieldOptions.uncheck == true) {
                 this.dataModel = null
             } else {
                 this.dataModel = val