【问题标题】:Update relative time with MomentJS使用 MomentJS 更新相对时间
【发布时间】:2015-07-15 16:46:58
【问题描述】:

我想创建一个对象,其键设置为单击按钮的时间。然后,我想每秒检查当前时间与创建时间的对比,console.log() 是相对时间。问题是它永远不会从“几秒钟前”改变。我错过了什么?

Codepen 实时示例:http://codepen.io/colealanroberts/pen/VLvpzR/?editors=001

这是我目前所拥有的:

(function() {
  // HTML Elements
  var $btn = document.getElementById('save');
  var $relTime = document.getElementById('relative-time');  

  var tObj = {};
  var now = moment();
  var t = now.format("dddd, MMMM Do YYYY, h:mm:ss a");

  function saveObj() {
      tObj = {
        timeClicked: t
  }
  // Log initial time
  console.log(tObj.timeClicked);

  setInterval(function() {
      var rel = moment([tObj.timeClicked]).fromNow(true);
      console.log(rel);
  }, 1000);
 }

  $btn.addEventListener('click', saveObj);
})();

【问题讨论】:

    标签: javascript time momentjs


    【解决方案1】:

    你保存的不是瞬间,而是一个字符串。

    如果你想继续使用那个字符串,你必须解析它:

    var rel = moment(tObj.timeClicked,["dddd, MMMM Do YYYY, h:mm:ss a"]).fromNow(true);
    

    当然,存储时刻本身会更简单:http://codepen.io/anon/pen/qdOjqr

    【讨论】:

      猜你喜欢
      • 2019-06-14
      • 2020-08-01
      • 2015-05-01
      • 2016-11-16
      • 2010-12-27
      • 2013-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多