javascript - 在 React 中重新渲染 moment.fromNow()

标签 javascript reactjs redux

如何正确刷新 moment.from()。我尝试在componentDidMount中设置setInterval(this.renderReminders(), 1000),但是没有用,弹出错误。如何解决这个问题?

class App extends Component {

renderReminders() {
    const { reminders } = this.props;
    return (
      <ListGroup>
        {
          reminders.map(reminder => {
            return (
              <ListGroupItem key={reminder.id}>              
                <div>{moment(reminder.dueDate, 'DD-MM-YYYY HH:mm').fromNow()}</div>             
              </ListGroupItem>
            ) // return
          }) // reminders.map
        }
      </ListGroup>
    ) // return
  } // renderReminders()
  
  render() {
    return (
      <div className="container">      
        { this.renderReminders() }
      </div>
    ) // return
  } // render
  
 } // App

最佳答案

我知道我发帖晚了,但它可以帮助其他刚接触这个问题的人。

最好还是轻松使用 react-moment

要求;时刻, react 时刻

import React from 'react'
import Moment from 'react-moment'

const UpdatesTheTime = () => {
    return (
        <Moment interval={1000} fromNow>
            {reminder.dueDate}
        </Moment>
    )
}

export default UpdatesTheTime

它会每秒更新一次,因为我将间隔设置为 1000

要查看结果,请在 1 分钟后观察它的变化

我使用 TIMESTAMP 这样的 1590115433736 作为时间值,效果很好

参见 https://openbase.io/js/react-moment了解更多信息

您可以使用解析格式来获取时间值。

示例 < Moment parse="YYYY-MM-DD HH:mm"/>

关于javascript - 在 React 中重新渲染 moment.fromNow(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44870771/

相关文章:

typescript - "No reducer provided for key X"console.error in redux jest 测试

javascript - 如何在同一页面上使用 2 个 ng-repeat 指令在 Angular 中隔离/封装 $index ?

javascript - css 溢出无法正常工作

javascript - 使用 redux-toolkit 将状态重置为初始状态

javascript - 如何在模式中显示pdf而不是在react js中的新窗口中打开它

javascript - 如何在 react 中从 parent 那里激发 child 的功能?

Redux-form 在 OnSubmit 处理程序中返回 Proxy

javascript - Rails bootstrap Javascript include 不起作用

javascript - Leaflet customcontrol - Angular 2+

reactjs - eslint 在 webpack 中导入 : Unable to resolve path to module