2015-05-05 23 views
0

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

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); 
})(); 

回答

1

你不救的时刻,但一个字符串。

如果你想使用字符串保留,则必须分析它:

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

当然,这将是简单的存储时刻本身:http://codepen.io/anon/pen/qdOjqr

+0

感谢您的编辑。你是对的,那更简单。 –