相关疑难解决方法(0)

何处在反应组件中应用我的moment()函数?

我正在尝试做一个时钟组件,只是在网页中以本地格式给出日期和时间.我在我的webpack环境中使用命令行npm i -save导入了MomentJS.接下来我在我的Clock.jsx组件中写了这个(主要基于网站上的React示例).

import React from 'react';
import Moment from 'moment';

export default class Clock extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      dateTimestamp : Date.now()
    };
  }
  tick = () => {
    this.setState({dateTimestamp: this.state.dateTimestamp + 1});
    console.log('tick');
  }
  componentDidMount() {
    this.interval = setInterval(this.tick, 1000);
  }
  componentWillUnmount() {
    clearInterval(this.interval);
  }
  render() {
    const date = this.state.dateTimestamp;
    return(
      <div className="clock"> Heure locale : {date}</div>
    );
}

}
Run Code Online (Sandbox Code Playgroud)

这样做时间戳正确递增.但是,在对象中传递新的state元素时,第一个值(基于Date.now())是在构造函数中计算的,但是对于每个tick,只有时间戳递增格式化的日期会粘贴在其第一个值上.这是代码.

import React from 'react';
import Moment from 'moment';

export default class Clock …
Run Code Online (Sandbox Code Playgroud)

javascript momentjs reactjs react-jsx

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

javascript ×1

momentjs ×1

react-jsx ×1

reactjs ×1