vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue向后台传递日期

vue如何向后台传递日期

作者:会飞的猪biubiu

这篇文章主要介绍了vue如何向后台传递日期,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

如何向后台传递日期

直接向后台传,会报错格式转化错误。

Cannot deserialize value of type `java.util.Date` from String "2020-02-26"

前台写法:

<el-form-item label="部署时间" prop="deployDate">
      <el-date-picker
              v-model="dataForm.deployDate"
              type="date"
              value-format="yyyy-MM-dd"
              format="yyyy-MM-dd"
              placeholder="选择日期">
        </el-date-picker>
    </el-form-item>

后台写法:

controller中直接实体接收,只需要在实体类中加入如下代码,进行格式化处理即可
/**
     * 部署时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    private Date deployDate;

给后端发送日期格式

// 给后端发送日期格式
formatDateValue(now) {
	var year = this.dateZero(now.getFullYear()); //取得4位数的年份
	var month = this.dateZero(now.getMonth() + 1); //取得日期中的月份,其中0表示1月,11表示12月
	var date = this.dateZero(now.getDate()); //返回日期月份中的天数(1到31)
	var hour = this.dateZero(now.getHours()); //返回日期中的小时数(0到23)
	var minute = this.dateZero(now.getMinutes()); //返回日期中的分钟数(0到59)
	var second = this.dateZero(now.getSeconds()); //返回日期中的秒数(0到59)
	return year + "-" + month + "-" + date + " " + hour + ":" + minute + ":" + second;
},
// 日期前面加0
dateZero(time) {
	if (time < 10) {
		time = "" + "0" + time;
	}
	return time;
},
//需要发送的值
this.formatDateValue(new Date(this.appointmentTime))

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

您可能感兴趣的文章:
阅读全文