lrf402788946 4 years ago
parent
commit
913853e1b3
3 changed files with 12 additions and 2 deletions
  1. 6 0
      components/form.md
  2. 5 1
      components/form.vue
  3. 1 1
      store/attendance.js

+ 6 - 0
components/form.md

@@ -29,8 +29,14 @@
 |tip|String|`-`|否|提示语,例如:请输入11位电话号码|
 |labelWidth|String|`120px`|否|表单label宽度,element的,默认120px|
 |format|Function|`-`|否|当type = text 时需要将该字段内容转换,可以使用format|
+|filterReturn|Boolean|`-`|否|针对这个选项需要在选择后就做些逻辑处理时,改成true,然后再使用filterReturn方法处理,(例如二级联动的情况)|
 
 
+### methods
+|方法名|参数|说明|
+|:-:|:-:|:-:|
+|filterReturn|{data,prop}|查询条件栏过滤条件中filterReturn字段为true的回调方法|
+
 
 
 

+ 5 - 1
components/form.vue

@@ -53,7 +53,7 @@
                     </el-checkbox-group>
                   </template>
                   <template v-else-if="item.type === 'select'">
-                    <el-select v-model="form[item.model]" v-bind="item.options" filterable clearable>
+                    <el-select v-model="form[item.model]" v-bind="item.options" filterable clearable @change="data => filterReturn(data, item)">
                       <slot name="options" v-bind="{ item, form, fieldChange }"></slot>
                     </el-select>
                   </template>
@@ -195,6 +195,10 @@ export default {
       if (!_.isFunction(dis)) return true;
       else return dis(field, this.form);
     },
+    filterReturn(data, item) {
+      let { prop, filterReturn } = item;
+      if (filterReturn) this.$emit('filterReturn', { data, prop });
+    },
   },
 };
 </script>

+ 1 - 1
store/attendance.js

@@ -57,7 +57,7 @@ const actions = {
   },
   // 特殊班考勤管理
   async attendancecreateList({ commit }, payload) {
-    const res = await this.$axios.$post(`${api.checkInfo}/attendancecreateList`, payload);
+    const res = await this.$axios.$post(`${api.checkInfo}/attendancecreateList`, { studentIds: payload });
     return res;
   },
 };