liucf 5 年之前
父节点
当前提交
7bf0f0a2b8
共有 3 个文件被更改,包括 17 次插入2 次删除
  1. 6 2
      src/common/PickTime.vue
  2. 5 0
      src/common/Picker.vue
  3. 6 0
      src/components/Detail.vue

+ 6 - 2
src/common/PickTime.vue

@@ -3,7 +3,7 @@
   <div class="toast-wrap">
     <p v-show="val" :class="['ptab',{'check':val != '请选择'}]" @click="showPicker">{{val}}</p>
     <p v-show="val != '请选择'" class="tip">点击可修改</p>
-    <Picker :show="showTime" @comfirn="getTimeVal" @cancel="close" :picIndex="item.pickIndex||[]"/>
+    <Picker ref="picker" :show="showTime" @comfirn="getTimeVal" @cancel="close" :picIndex="picIndex"/>
   </div> 
 </template>
 <script type="text/javascript">
@@ -14,7 +14,8 @@
     data() {
       return {
         val:this.item.value || '请选择',
-        showTime:false
+        showTime:false,
+        picIndex:this.item.pickIndex||[]
       }
     },
     props:['item'],
@@ -48,6 +49,9 @@
       item:{
         handler(newVal,oldVal){
           this.val = newVal.value|| '请选择';
+          if(!newVal.value){//没有值时复原时间组件中的index
+            this.$refs.picker.resetIndex();
+          }
         },
         deep:true
       }

+ 5 - 0
src/common/Picker.vue

@@ -79,6 +79,11 @@
         }else{
           this.columIndx[colum] = num.lastIndexOf(value[colum]);
         }
+      },
+      resetIndex(){//清除时复原默认index
+        this.columns[0].defaultIndex = 10;
+        this.columns[1].defaultIndex = 11;
+        this.columns[2].defaultIndex = 6;
       }
     }
   };

+ 6 - 0
src/components/Detail.vue

@@ -181,6 +181,12 @@ import {patt,trimDots,imageUrlPrefix} from '@utils/tools.js'
         const datas = JSON.parse(JSON.stringify(this.checkDatas.questionMapping))
         let reqFlag = false;//必填项标识
         for(let i in datas){
+          // 时间控件需要清除缓存的index
+          if(datas[i].controlType ==9){
+            if(datas[i].pickIndex){
+              datas[i].pickIndex = [];
+            } 
+          }
           datas[i].value = "";
           datas[i].valueP = "";
           if(datas[i].required==1){