2014-09-19 57 views
1

我正在使用moment.js進行倒計時。
這將是很好,如果我可以有條件格式。在moment.js中是否有條件格式?

這裏是我現在

var count_down = moment().hour(23).min(30); 
alert(count_down.format('H[h ]m[min ]s[s]')); 

顯示:

0H 43min 20S


我想知道如果有一個格式表達式那會做

var format = 'H[h ]m[min ]s[s]'; 
if (count_down.hour() === 0) 
    format = 'm[min ]s[s]'; 
alert(count_down.format(format)); 

顯示:

43min 20S

我還沒有見過這樣的事情在doc雖然。

回答

0

A moment對象表示一天的時間,這對倒計時沒有意義。您應該使用時刻duration object來代替此目的。

時刻還沒有格式化的持續時間的直接支持,所以你會做這樣的事情:

var d = moment.duration('23:30'); 
var s = (d.hours() > 0 ? d.hours() + 'h ' : '') 
     + d.minutes() + 'min ' 
     + d.seconds() + 's'; 

或者,你可以嘗試moment-duration-format插件,但你仍然必須處理條件評價你自己。

+0

謝謝。我不知道持續時間對象:) – Dionys 2014-10-01 07:50:57