前端发送到后端的时间,回显回来少8小时
设置的时间如图:
回显的时间如图:
可以很明显的看到,时间少了8小时,根本原因是:中国国家标准时间是东经120°(东八区)的地方时间,同格林威治时间(世界时)整整相差8小时
解决办法:
以彼之道,还之彼身
先看官网这两个属性的意思,也就是说,我们只需要更改 value-format 的格式就可以了
上代码:
<el-date-picker
class="boxTimeStart"
:disabled="ruleForm.timeSetting == false"
v-model="ruleForm.startDate"
format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DDTHH:mm:ss.000Z"
type="datetime"
placeholder="开始时间"
:disabled-date="disabledDateStart"
>
</el-date-picker>
<!-- value-format="YYYY-MM-DDTHH:mm:ss.000Z" -->
<el-date-picker
class="boxTimeEnd"
:disabled="ruleForm.timeSetting == false"
v-model="ruleForm.endDate"
format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DDTHH:mm:ss.000Z"
type="datetime"
placeholder="结束时间"
:disabled-date="disabledDateEnd"
>
</el-date-picker>
关键代码:就一行:
// 这种时间格式看起来是不是很眼熟,,,
value-format="YYYY-MM-DDTHH:mm:ss.000Z"
**但是请注意:**value-format 和 format 的时间格式大小写,一定要一致,也就是说:YYYY-MM-DD HH:mm:ss的大小写一定要一致,切记。
完美解决,如图所示: