需求: DatePicker组件,选择日期后格式变成UTC,例如:选择的日期是 2019-03-10,得到的结果却是 2019-03-10T16:00:00.000Z,页面显示是SatMar 09 2019 00:00:00 GMT+0800 (中国标准时间)
解决方法: on-change事件的返回值,给绑定的数据赋值。查文档可知道on-change的返回值是已经格式化后的日期,是我们想要的格式,在template$eventon-change的返回值,所以直接用简易写法“endTime=$event”就可以赋值。

         <DatePicker type="datetime" 
          placeholder="选择截止时间" 
          v-model="formCustom.endTime" 
          @on-change="formCustom.endTime=$event">
          </DatePicker>

在这里插入图片描述
这是添加时间,v-model@on-change一起用类型就是yyyy-MM-dd HH:mm:ss类型的
但是时间添加成功之后,还得支持修改呀,修改的话,v-model@on-change一起用类型还是中国标准时间,目前发生这种情况原因未知,但是也得解决,所以采用了正则。

      let endtime = new Date(this.eachItem.endTime).toJSON();
      this.eachItem.endTime = new Date(+new Date(endtime) + 8 * 3600 * 1000)
        .toISOString()
        .replace(/T/g, " ")
        .replace(/\.[\d]{3}Z/, "");

时间控件解决了,又发现查出来的时间跟MySQL中的时间差一天
解决方案:在jdbc加上&serverTimezone=Asia/Shanghai

Logo

前往低代码交流专区

更多推荐