过滤时间的几种方法

全局过滤器main.js

Vue.filter('过滤器名',function(val){
  let time=new Date(val)
  let Y=time.getFullYear()
  let M=(time.getMonth()+'').padStart(2,'0')
  let D=(time.getDate()+'').padStart(2,'0')
  let hh=(time.getHours()+'').padStart(2,'0')
  let mm=(time.getMinutes()+'').padStart(2,'0')
  let ss=(time.getSeconds()+'').padStart(2,'0')
  return `${Y}-${M}-${D} ${hh}:${mm}:${ss}`

})

使用过滤时间插件

npm i moment

全局main.js

Moment.js 中文网Moment.js 是一个 JavaScript 日期处理类库,用于解析、检验、操作、以及显示日期http://momentjs.cn/

 import moment from 'moment'
Vue.filter('过滤器名',function(val){
  return moment(val).format('Y-M-D hh:mm:ss')
})

局部过滤器 页面里

//把数据中的时间改成和筛选器相匹配的中国时间
/* 过滤器 */
  filters: {
    /* val:传递过来的时间 */
    过滤器名(val) {
      /* 变成电脑自带时间 */
      let time = new Date(val);
      // console.log(time);
      /* 算出年 */
      let year = time.getFullYear();
      /* 写个对象把月日时分秒单独弄出来为后来做格式 */
      let obj = {
        moon: time.getMonth() + 1,
        day: time.getDate(),
        s: time.getHours(),
        m: time.getMinutes(),
        f: time.getSeconds()
      };
      //   for in 循环obj 判断里面每一项是否小于10,小于10前面补0
      for (let i in obj) {
        obj[i] = obj[i] < 10 ? "0" + obj[i] : obj[i];
      }
      //   返回要输出的格式
      return `${year}-${obj.moon}-${obj.day} ${obj.s}:${obj.m}:${obj.f}`;
    }
  },
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值