vue中对后端返回的时间处理
例如:后端返回的时间为
可以封装为方法,页面中直接用
<li v-for="(item,index) in newsList" :key="index" @click="news_title(item)">
<div class="li_content">
<div class="new_left_content_time">
<div class="data">{{formatDayTime(item.createTime)}}</div>
<div class="years">{{formatYearTime(item.createTime)}}</div>
</div>
<div class="new_left_content_xinxi">
<span>{{item.title}}</span>
</div>
</div>
</li>
methods:{
//分割出来天
formatDayTime(val){
if(val){
let time = val.split(' ')[0].toString().split('-')[2]
//console.log(time) 值为21
return time
}
},
//分割出来年份
formatYearTime(val){
if(val){
let year = val.split(' ')[0].toString().split('-')[0]+'-'+val.split(' ')[0].toString().split('-')[1]
//console.log(year) 值为2021-12
return year
}
},
//去掉时间使用方法是一样的
formatYearTime(val){
let time = val.split(' ')[0]
return time
},
}
如果后端返回的是时间戳
封装format.js文件
下载插件
npm install moment --save
文件
import moment from 'moment'
/**
* format unix timestamp to YYYY-MM-DD HH:mm:ss
* @param {number} timestamp unix timestamp (10 bits)
*/
export default {
format (timestamp) {
return moment(timestamp).format('YYYY-MM-DD HH:mm:ss')
},
formatZw (timestamp) {
return moment(timestamp).format("YYYY年MM月DD HH:mm:ss")
},
formatYear (timestamp) {
return moment(timestamp).format('YYYY-MM-DD')
},
formatDay (timestamp) {
return moment(timestamp).format('MM.DD')
},
formatTime (timestamp) {
return moment(timestamp).format('mm:ss')
},
formateSeconds (endTime) {
let secondTime = parseInt(endTime / 1000)// 将传入的秒的值转化为Number
let min = 0// 初始化分
let h = 0// 初始化小时
let result = ''
if (secondTime > 60) { // 如果秒数大于60,将秒数转换成整数
min = parseInt(secondTime / 60) // 获取分钟,除以60取整数,得到整数分钟
secondTime = parseInt(secondTime % 60) // 获取秒数,秒数取佘,得到整数秒数
if (min > 60) { // 如果分钟大于60,将分钟转换成小时
h = parseInt(min / 60) // 获取小时,获取分钟除以60,得到整数小时
min = parseInt(min % 60) // 获取小时后取佘的分,获取分钟除以60取佘的分
}
}
result = `${h.toString().padStart(2, '0')} : ${min.toString().padStart(2, '0')} : ${secondTime.toString().padStart(2, '0')}`
return result
}
}