【问题标题】:Get calculated date from moment object react从时刻对象反应中获取计算日期
【发布时间】:2020-01-21 11:27:00
【问题描述】:

我已经对需要根据本地日期在给定日期添加几个小时的组件做出反应。

render() {
let offset = new Date().getTimezoneOffset();
let localDate1=(moment(processItem.beginTime).add(-offset/60,'h'));
return(
     <p>{localDate1}</p>/*need to display the 2019-09-18T16:02:00.00*/
 )
}

这里的 processItem.beginTime 格式是 '2019-09-18T21:49:40+08:00'。当我在控制台登录时,'localDate1' it.给出以下内容:

{ 
    _isAMomentObject: true, 
    _i: "2019-09-18T18:32:00+08:00", 
    _f: "YYYY-MM-DDTHH:mm:ssZ",
    _tzm: 480, 
    _isUTC: false, 
    _pf: {…}, 
    _locale: {…}, 
    _d: Date 2019-09-18T16:02:00.000Z, 
    _isValid: true 
}

正确的值是'_d: Date 2019-09-18T16:02:00.000Z',我想在我的代码中显示它。如何从对象中提取该值?

【问题讨论】:

标签: reactjs date momentjs


【解决方案1】:

在这里我得到了我想要显示的值

let localDate1=(moment(processItem.beginTime).add(-offset/60,'h').toJSON());
return(
 <p>{localDate1}</p> /*display the 2019-09-18T16:02:00.00*/
)

.toJSON() 在这里解决了我的问题

【讨论】:

    【解决方案2】:

    根据Moment's docs

    const offset = moment(new Date()).utcOffset()
    const str = moment(processItem.beginTime).add(offset, 'minutes')
    const result = moment(str).format()//iso yyyy-MM-ddThh:mm:ss
    console.log(result)
    

    【讨论】:

      猜你喜欢
      • 2018-10-12
      • 1970-01-01
      • 2016-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-02
      • 2012-03-18
      • 1970-01-01
      相关资源
      最近更新 更多