Vue.js Momentjs:如何在Vue中使用mixin从utc日期获得正确的时间?

Vue.js Momentjs:如何在Vue中使用mixin从utc日期获得正确的时间?,vue.js,momentjs,Vue.js,Momentjs,我不确定我做错了什么。有人能指出我的错误吗 dateMixin.js ` ` 组件.vue 此处date=2019-06-11T15:28:07.226938-07:00 ` {{convertDate(日期,'MM/DD/YYYY hh:MM A')} 从“../mixins/dateMixin.js”导入{dateMixin} 导出默认值{ mixin:[日期mixin] } ` 当前输出:2019年11月6日上午12:00 预期输出:2019年11月6日下午3:28 谢谢 您在mixi

我不确定我做错了什么。有人能指出我的错误吗

dateMixin.js
`

`

组件.vue
此处
date=2019-06-11T15:28:07.226938-07:00

`


{{convertDate(日期,'MM/DD/YYYY hh:MM A')}
从“../mixins/dateMixin.js”导入{dateMixin}
导出默认值{
mixin:[日期mixin]
}
`
当前输出:2019年11月6日上午12:00
预期输出:2019年11月6日下午3:28


谢谢

您在mixin(
'yyyyy-MM-DD'
)中硬编码了解析格式,这一行:

return moment(date, 'YYYY-MM-DD').format(format)
它将日期字符串的第一部分(
2019-06-11T15:28:07.226938-07:00
)读取为
YYYY-MM-DD
,并忽略其余部分。如果删除解析格式字符串并允许矩读取整个日期,即:

return moment(date).format(format)
…它将正确输出。看到它工作了吗

Vue.config.productionTip=false;
Vue.config.devtools=false;
新Vue({
el:'钩子',
模板:“#appTemplate”,
数据:()=>({
日期:“2019-06-11T15:28:07.226938-07:00”
}),
计算:{
getTimezone(){
返回力矩.tz.guess();
}
},
方法:{
转换日期(日期、格式){
返回时间(此日期)。格式(格式)
},
convertToUtc(日期、格式){
返回时刻(this.date).utc().format(格式)
}
}
})
dl{font-family:monospace;}
dd{页边距底部:1rem;}
dt{font-weight:bold;}

谢谢!成功了。感谢您的解释……现在更有意义了:)
return moment(date, 'YYYY-MM-DD').format(format)
return moment(date).format(format)