問題:DatePicker組件,選擇日期後格式變成UTC,例如:選擇的日期是2019-03-10,得到的結果卻是2019-03-10T16:00:00.000Z,頁面顯示是Sat Mar 09 2019 00:00:00 GMT+0800 (中國標準時間)
解決:用on-change事件的返回值,給綁定的數據賦值。查文檔可知道on-change的返回值是已經格式化後的日期,是我們想要的格式,在<template>中$event是on-change的返回值,直接用簡易寫法(1)selDate=$event就可以賦值,第二點(2)將v-model="selDate"改爲:value="selDate" 來綁定值,這樣得到的是格式化後的,如果使用v-model,如果用watch監視selDate,會進兩次第一次過來還是UTC格式,第二次是轉好格式的。將v-model改爲:value時,只會進一次,並且是轉好格式的,再次強調。
<template>
<div>
<DatePicker ref="dateRef"
:value="selDate"
:placeholder="選擇日期"
size="small"
:editable="false"
@on-change="datepicker_change_event(selDate=$event)"></DatePicker>
</div>
</temlate>
<script>
export default {
data(){
return {
selDate: '2019-03-10'
}
},
methods:{
datepicker_change_event() {
console.log('正常格式日期',this.selDate);
},
}
</script>