【element-ui】elementui 时间选择器 8小时时差

      <el-date-picker

v-model="rulesForm.FlightTime"

type="datetime"

placeholder="选择日期时间"

value-format="yyyy-MM-dd HH:mm:ss"

></el-date-picker>

data(){

return {

rulesForm:{

FlightTime:new Date()

}

}

}

日期选择器设置了 value-format="yyyy-MM-dd HH:mm:ss",默认值是当前时间new Date()
默认值不走value-format的格式化,只有选了值以后才走value-format。这会导致向后台传值的时候默认值传的是UTC时间,选中后传的是北京时间。
第一次进入页面打印的默认值
图片描述

选中一次时间后打印的值
图片描述

回答:

你用default-value绑定默认值试试看

回答:

你设置default-value的格式和你的value-format一致,value-format是设置后的值,default-value是默认显示的值,同时将format也设置上

回答:

自己封装一个格式化时间吧,使用该组件的格式化会造成从后台拿到的时间戳值与组件的值匹配不上。(我就是这样的...)

formatterTime: (time) => {

const date = new Date(time)

const year = date.getFullYear()

const month = date.getMonth() + 1

const day = date.getDate()

// const hour = date.getHours()

// const minutes = date.getMinutes()

// const seconds = date.getSeconds()

// const dateTime = year + '-' + month + '-' + day + ' ' + utils.checkLength(hour) + ':' + utils.checkLength(minutes) + ':' + utils.checkLength(seconds)

const dateTime = year + '-' + month + '-' + day

return dateTime

},

checkLength: (str) => {

str = str.toString()

if (str.length < 2) {

str = '0' + str

}

return str

},

以上是 【element-ui】elementui 时间选择器 8小时时差 的全部内容, 来源链接: utcz.com/a/151914.html

回到顶部