一、Vue時間戳轉換
Vue中常常涉及到時間戳,時間戳是指格林威治時間1970年01月01日00時00分00秒到當前時間之間所經過的秒數。在Vue中,將時間戳轉換成正常的日期格式可以使用全局過濾器來完成。
//註冊全局過濾器 Vue.filter('formatDate', function(value) { let date = new Date(value * 1000); let year = date.getFullYear(); let month = date.getMonth() < 9 ? '0' + (date.getMonth() + 1) : (date.getMonth() + 1); let day = date.getDate() < 9 ? '0' + (date.getDate()) : (date.getDate()); return year + '-' + month + '-' + day; }) //在模板中使用創建時間: {{ item.create_time | formatDate }}
二、Vue時間戳前端轉還是後端轉
在前端和後端都可以將時間戳轉換成正常的日期格式。前端通過全局過濾器或者插件來完成,後端則可以通過時間格式化庫來實現。具體轉換方式根據需要選擇即可。
三、Vue時間戳錄像
在Vue中,我們可以使用自定義指令來實現時間戳的錄像功能。
//定義錄像指令 Vue.directive('video', { bind: function(el, binding) { let start = null; el.addEventListener('click', function() { if (!start) { start = new Date().getTime(); el.innerHTML = binding.value + ' - 錄製中...'; } else { let end = new Date().getTime(); let time = (end - start) / 1000; el.innerHTML = binding.value + ' - 錄製完成!耗時:' + time + 's'; start = null; } }) } }) //在模板中使用 錄像
四、Vue時間戳怎麼弄
針對不同的需求,我們可以選擇使用全局過濾器、插件、指令等形式來完成時間戳的相關操作。
五、Vue時間戳轉換成時間
除了可以將時間戳轉換成正常的日期格式,我們還可以將時間戳轉換成具體的時間,例如:10:30AM。
//註冊全局過濾器 Vue.filter('formatTime', function(value) { let date = new Date(value * 1000); let hours = date.getHours() < 10 ? '0' + (date.getHours()) : (date.getHours()); let minutes = date.getMinutes() < 10 ? '0' + (date.getMinutes()) : (date.getMinutes()); let ampm = hours < 12 ? 'AM' : 'PM'; return hours + ':' + minutes + ' ' + ampm; }) //在模板中使用開始時間: {{ item.start_time | formatTime }}
六、Vue時間戳轉換封裝
對於經常使用的時間戳轉換,我們可以將其封裝成Vue的插件,在需要使用它的時候,直接引入並使用即可。
//創建插件 const timeStamp = { install(Vue) { Vue.filter('formatDate', function(value) { let date = new Date(value * 1000); let year = date.getFullYear(); let month = date.getMonth() < 9 ? '0' + (date.getMonth() + 1) : (date.getMonth() + 1); let day = date.getDate() < 9 ? '0' + (date.getDate()) : (date.getDate()); return year + '-' + month + '-' + day; }) Vue.filter('formatTime', function(value) { let date = new Date(value * 1000); let hours = date.getHours() < 10 ? '0' + (date.getHours()) : (date.getHours()); let minutes = date.getMinutes() < 10 ? '0' + (date.getMinutes()) : (date.getMinutes()); let ampm = hours < 12 ? 'AM' : 'PM'; return hours + ':' + minutes + ' ' + ampm; }) } } //使用插件 Vue.use(timeStamp);
七、Vue時間戳轉換日期格式
除了常規的日期格式,我們還可以將時間戳轉換成其他格式的日期格式,例如:YYYY/MM/DD或者MM/DD/YYYY等形式。具體轉換方式可以使用moment等時間格式化庫。
八、Vue時間戳計算時間差
在Vue中,我們可以使用Date對象的getTime()方法來獲取時間戳,進而計算兩個時間的時間差。
//計算時間差 function diff(start, end) { let startTime = new Date(start).getTime(); let endTime = new Date(end).getTime(); let diffTime = endTime - startTime; let days = Math.floor(diffTime / (24 * 3600 * 1000)); let hours = Math.floor((diffTime % (24 * 3600 * 1000)) / (3600 * 1000)); let minutes = Math.floor((diffTime % (3600 * 1000)) / (60 * 1000)); let seconds = Math.floor((diffTime % (60 * 1000)) / 1000); return days + '天' + hours + '小時' + minutes + '分' + seconds + '秒'; } //在模板中使用倒計時: {{ diff(item.start_time, item.end_time) }}
九、Vue時間戳轉成時間的方法選取
根據需求而定,可以使用全局過濾器、插件、指令或者時間格式化庫等方式來完成Vue中時間戳轉換成普通時間的操作。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/157463.html