我正在遵循一个示例fiddle,该示例将UTC时间转换为本地momentjs时间。
尽管我的示例运行不正常,并且我试图理解原因。
我的ReactJS代码执行以下功能以显示正确的时间:
<p>Created Date: {(this.utcToLocalTime(result._source.created_date))}</p>
功能如下(ES6代码):
utcToLocalTime(utc_time) {
var localTime = moment.utc(utc_time).toDate()
console.log(localTime) // Tue Jun 21 2016 16:59:34 GMT-0700 (PDT)
var localTime_formatted = moment(localTime).format('YYYY-MM-DD HH:mm:ss')
console.log(localTime_formatted) //2016-06-21 16:59:34
return localTime_formatted
}
但我想时间展示一些像
10:32 AM
我如何不正确地使用MomentJS?
最佳答案
据我了解,您想将日期从“正常”格式解析为上午/下午(12小时制)。为此,只需在localTime_formatted模板的末尾添加a
,如下所示:
utcToLocalTime(utc_time) {
var localTime = moment.utc(utc_time).toDate()
console.log(localTime) // Tue Jun 21 2016 16:59:34 GMT-0700 (PDT)
var localTime_formatted = moment(localTime).format('YYYY-MM-DD HH:mm a')
console.log(localTime_formatted) //2016-06-21 16:59:34
return localTime_formatted
}
我在这里更新了您的小提琴:http://jsfiddle.net/ya1h7zk6/
这是momentjs解析文档的链接:http://momentjs.com/docs/#/parsing/
编辑:顺便说一句,您说“ ES6代码”。然后,请使用
let
(docs)代替var;)