element 日期选择器el-date-picker问题记录(清除后报错)

报错信息如下:
[Vue warn]: Error in v-on handler: “TypeError: Cannot read property ‘0’ of null”

<el-date-picker
 v-model="formInline.time"
 type="daterange"
 range-separator="至"
 start-placeholder="开始日期"
 end-placeholder="结束日期"
 @change="changeDate"
 value-format="yyyy-MM-dd"
>
</el-date-picker>
data(){
  return {
  formInline: {
        time: [],
      },
      start_date: "",
      end_date:""
      
  }
}

在选择日期范围之前,value是一个空数组,选择日期后,输出value:

在这里插入图片描述

 当点击清除按钮时候报错:

在这里插入图片描述

 排查原因:因为当我们点击清除按钮value值变为null,文档中也没有清除的回调函数,所以解决该问题的方法有如下两种:
第一种:
在下次调用之前给value重新赋值为:[]

if (!this.formInline.time) {
  this.formInline.time = []
}

第二种:在取值的时候进行判断

this.start_date = this.formInline.time ? this.formInline.time[0] || "" : "";
this.end_date = this.formInline.time ? this.formInline.time[1] || "" : "";
 

猜你喜欢

转载自blog.csdn.net/qq_42753983/article/details/127383007