From 8750958a7338ca2465f081f73e12ba38ffce7bdc Mon Sep 17 00:00:00 2001
From: 张晓波 <bingbo1993@126.com>
Date: 星期四, 07 十二月 2023 10:26:45 +0800
Subject: [PATCH] 广播

---
 web/src/components/element/Form.vue |   29 ++++++++++++++++++-----------
 1 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/web/src/components/element/Form.vue b/web/src/components/element/Form.vue
index a955305..dcc6731 100644
--- a/web/src/components/element/Form.vue
+++ b/web/src/components/element/Form.vue
@@ -2,14 +2,11 @@
   <div class="role">
     <!-- https://juejin.cn/post/7042597964618924069?searchId=202310071305486BA29870D97939288832#heading-8 -->
     <!-- https://juejin.cn/post/7139110255748710436?searchId=2023092815420483B1983D44854DBE6608#comment -->
-    <el-form 
-      ref="ruleForm" 
-      class="rule-form" 
-      :model="formConfig.formModels"
-      :rules="formConfig.formRules"
+    <el-form ref="ruleForm" class="rule-form" :model="formConfig.formModels" :rules="formConfig.formRules"
       :label-width="formConfig.labelWidth || 'auto'">
+
       <el-row>
-        <el-col v-for="item in formConfig.formItems" :key="item.label" :span="item.span || 24">
+        <el-col v-for="item in formItems" :key="item.label" :span="item.span || 24"> 
           <el-form-item :label="item.label" :style="formConfig.itemStyle || null">
 
             <template v-if="item.type === 'input' || item.type === 'password'">
@@ -17,10 +14,14 @@
                 :show-password="item.type === 'password'"></el-input>
             </template>
 
+            <template v-else-if="item.type === 'textarea'">
+              <el-input type="textarea" :placeholder="item.placeholder || `请输入${item.label}`"></el-input>
+            </template>
+
             <template v-else-if="item.type === 'select'">
-              <el-select :placeholder="item.placeholder || `请选择${item.label}`">
-                <el-option v-for="option in item.options" :key="option.label" :label="option.label"
-                  :value="option.value"></el-option>
+              <el-select v-model="formConfig.formModels.realNames" :placeholder="item.placeholder || `请选择${item.label}`">
+                <el-option v-for="option in item.options" :key="option.id" :label="option.label"
+                  :value="option.id"></el-option>
               </el-select>
             </template>
 
@@ -31,19 +32,25 @@
           </el-form-item>
         </el-col>
       </el-row>
+
     </el-form>
   </div>
 </template>
 <script>
 export default {
+  name: "cForm",
   data() {
     return {}
   },
   props: {
     formConfig: {
       type: Object,
-      default: () => ({})
-    }
+      default: () => { }
+    },
+    formItems: {
+      type: Array,
+      default: () => []
+    },
   }
 }
 </script>

--
Gitblit v1.9.3