项目场景:

通过elementUI的时间选择器添加某人的出生日期


问题描述

发现传给后台的数据是datetime格式而非yyyy-MM-dd

时间选择器: 

    <el-date-picker
      v-model="value1"
      type="date"
      placeholder="选择日期">
    </el-date-picker>

而传给后台的时间参数却是dateTime格式,且当前时间少8小时左右 

传给后台的参数

 

原因分析:

vue 使用 axios 提交数据给后端,需要对日期数据qs.stringify()序列化,默认返回的是格林威治时间,比北京时间晚8小时,时间选择器内的format仅为展示日期格式化,添加value-format="yyyy-MM-dd"指定数据绑定格式,强制转为“yyyy-MM-dd”格式数据

解决方案:

添加value-format=“yyyy-MM-dd"即可

          <el-date-picker
              v-model="dialogForm.birthday"
              type="date"
              placeholder="选择日期"
              format="yyyy-MM-dd"
              value-format="yyyy-MM-dd">
          </el-date-picker>

 此时时间格式为正确的date格式,而不是将时分秒置整的dateTime格式

 

Logo

前往低代码交流专区

更多推荐