MomentJS有選項「referanceTime」 - http://momentjs.com/docs/#/displaying/calendar-time/,它顯示這樣Last Monday 2:30 AM
問題的datetime是當我有沒有日期時間 - 它顯示Last Monday 0:00 AM
- 如何擺脫的時候,日期還沒有得到它?如何獲得ReferenceTime沒有時間
1
A
回答
0
由於2.10.5我們可以通過調用定義自己的渲染引擎(calendar
函數的第二個參數) - http://momentjs.com/docs/#/displaying/calendar-time/
但現在我們只能用字符串不能起到定義模式
1
與我的回答here非常相似,但略高一些。
我相信定製日曆時間的唯一方法是使用custom locale。在你的情況下,你需要使用自定義函數。
這裏做一個有點複雜,但完整地:
// Factory-type function that returns a function.
// Used to set argument (fstr) without using `bind` (since bind changes `this`)
var stripZeroTime = function (fstr) {
return function() {
if (this.format("H:mm:ss") === "0:00:00") { // if midnight
return fstr.replace("LT", "") //remove time
.replace("at", "") //remove at
.replace(/\s+/g, ' ').trim(); //strip extra spaces
}
return fstr;
}
}
moment.locale('en-cust', {
calendar: {
lastDay: stripZeroTime('[Yesterday at] LT'), // Default format strings
sameDay: stripZeroTime('[Today at] LT'),
nextDay: stripZeroTime('[Tomorrow at] LT'),
lastWeek: stripZeroTime('[last] dddd [at] LT'),
nextWeek: stripZeroTime('dddd [at] LT'),
sameElse: stripZeroTime('L')
}
});
更簡單的方法是隻剝去0:00:00
時,它的午夜。
function stripMidnight(m){
if(m.format("H:mm:ss") === "0:00:00"){
return m.calendar().replace("0:00:00","");
}else{
return m.calendar();
}
}
相關問題
- 1. 如何獲得timezone沒有時間timezone.js
- 2. 如何獲得有沒有
- 3. 如何獲得SQL Server中沒有發生時間差距?
- 4. 如何獲得created_at日期不僅沒有時間laravel 5.4
- 5. 如何在GMT時間獲得時間?
- 6. Unity - 如何獲得時間?
- 7. 如何獲得總時間?
- 8. 如何獲得Jira時間?
- 9. 如何獲取沒有Django修改時間的日期時間?
- 10. 如何獲得沒有命名空間的只有類名
- 11. Linq2Sql如何獲得所有不同的日期沒有時間部分
- 12. PHP如何從時間戳獲得日/時間的時間戳
- 13. 有沒有辦法從Gemfire獲得共同的集羣時間?
- 14. 有沒有辦法在Stata中獲得Unix時間戳?
- 15. 有沒有辦法讓api獲得流行的時間?
- 16. 我如何獲得時間(只有幾小時)
- 17. 如何獲得NSDate和當前時間之間的時間差?
- 18. 如何獲得兩個特定時間段之間的時間
- 19. 如何獲得兩列時間之間的時間?
- 20. 如何獲得剩餘時間?
- 21. 如何從google獲得時間javascript api
- 22. 如何獲得朋友的時間?
- 23. 如何獲得datediff的平均時間?
- 24. 如何獲得FlipClock的時間?
- 25. php mysql,如何獲得總時間?
- 26. 如何獲得「硬件時間」
- 27. 如何獲得微秒時間
- 28. 如何獲得Magento的訂單時間?
- 29. 如何從jquerymobile獲得持續時間
- 30. PHP - 如何獲得當地時間?