首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在dom [React]上显示当前时间和实时更新

在dom [React]上显示当前时间和实时更新
EN

Stack Overflow用户
提问于 2020-05-08 09:58:33
回答 2查看 327关注 0票数 1

我想在我的应用程序中显示时间。然而,我想自动更新时间,而不需要用户刷新页面。

我想要的是显示时间示例: 11:59,然后1分钟后自动显示12:00,无需浏览器刷新。就像普通的时钟一样。

知道如何显示当前秒数也会很有趣。

时间应为用户位置的当前实时时间。

EN

回答 2

Stack Overflow用户

发布于 2020-05-08 10:04:28

代码语言:javascript
复制
function theTime() {
    let Datte = new Date();
    let H = Datte.getHours();
    let m = Datte.getMinutes();``
    let s = Datte.getSeconds();
    if (H < 10 ){
        H = "0" + H;
    }
    if (m < 10 ){
        m = "0" + m;
    }
    if (s < 10 ){
        s = "0" + s;
    }
    document.getElementById("time").textContent = `${H} : ${m} : ${s}`
}
 setInterval(theTime);
代码语言:javascript
复制
<div id="time"></div>

setInterval(theTime);

票数 1
EN

Stack Overflow用户

发布于 2020-05-08 10:06:55

现在,您可以使用Date()

代码语言:javascript
复制
const timeEL = document.getElementById('time');

setInterval(setTime, 1000);

function setTime() {
  let date = new Date();
  timeEL.innerText = `${date.getHours()}:${('0' + date.getMinutes()).slice(-2)}:${('0' + date.getSeconds()).slice(-2)}`;
}
代码语言:javascript
复制
<div id="time">
</div>

通过使用ReactJS,您可以使用Refs and the DOM调用此函数并设置值。

代码语言:javascript
复制
class Times extends React.Component {

  constructor(props) {
    super(props);
    this.timeElement = React.createRef();
  }

  componentDidMount = () => {
    setInterval(this.setTime, 1000);
  }


  setTime = () => {
    let date = new Date();
    this.timeElement.current.innerText = `${date.getHours()}:${('0' + date.getMinutes()).slice(-2)}:${('0' + date.getSeconds()).slice(-2)}`;
  }

  render = () => { 
    return (
      <div ref={this.timeElement}></div>
    )
  }

}

ReactDOM.render( <Times/> , document.getElementById('app'));
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.8.4/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.8.4/umd/react-dom.production.min.js"></script>

<div id="app">
</div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61670748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档