1. 简单页面展示用

<template>
<!-- time为时间戳 -->
<div>{{time | formatDate}}</div>
<!-- 结果为 2018-01-23 18:31:35 -->
</template>
export default {
data() {
return {
time: 1516703495241
};
},
filters: {
formatDate: function (value) {
let date = new Date(value);
let y = date.getFullYear();
let MM = date.getMonth() + 1;
MM = MM < 10 ? ('0' + MM) : MM;
let d = date.getDate();
d = d < 10 ? ('0' + d) : d;
let h = date.getHours();
h = h < 10 ? ('0' + h) : h;
let m = date.getMinutes();
m = m < 10 ? ('0' + m) : m;
let s = date.getSeconds();
s = s < 10 ? ('0' + s) : s;
return y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s;
}
}
}
<template> <!-- time为时间戳 --> <div>{{time | formatDate}}</div> <!-- 结果为 2018-01-23 18:31:35 --> </template> export default { data() { return { time: 1516703495241 }; }, filters: { formatDate: function (value) { let date = new Date(value); let y = date.getFullYear(); let MM = date.getMonth() + 1; MM = MM < 10 ? ('0' + MM) : MM; let d = date.getDate(); d = d < 10 ? ('0' + d) : d; let h = date.getHours(); h = h < 10 ? ('0' + h) : h; let m = date.getMinutes(); m = m < 10 ? ('0' + m) : m; let s = date.getSeconds(); s = s < 10 ? ('0' + s) : s; return y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s; } } }
<template>
  <!-- time为时间戳 -->
  <div>{{time | formatDate}}</div>
  <!-- 结果为 2018-01-23 18:31:35 -->
</template>

  export default {
    data() {
      return {
        time: 1516703495241
      };
    },
    filters: {
      formatDate: function (value) {
        let date = new Date(value);
        let y = date.getFullYear();
        let MM = date.getMonth() + 1;
        MM = MM < 10 ? ('0' + MM) : MM;
        let d = date.getDate();
        d = d < 10 ? ('0' + d) : d;
        let h = date.getHours();
        h = h < 10 ? ('0' + h) : h;
        let m = date.getMinutes();
        m = m < 10 ? ('0' + m) : m;
        let s = date.getSeconds();
        s = s < 10 ? ('0' + s) : s;
        return y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s;
      }
    }
  }

2在方法中使用过滤器

//原写法
<div>{{time | formatDate}}</div>
//方法中写法
this.$options.filters.formatDate(value)
res.data.list[0].avgTalkDuration= this.$options.filters.formatSeconds(res.data.list[0].avgTalkDuration)
//原写法 <div>{{time | formatDate}}</div> //方法中写法 this.$options.filters.formatDate(value) res.data.list[0].avgTalkDuration= this.$options.filters.formatSeconds(res.data.list[0].avgTalkDuration)
//原写法
<div>{{time | formatDate}}</div>
//方法中写法
this.$options.filters.formatDate(value)
res.data.list[0].avgTalkDuration=  this.$options.filters.formatSeconds(res.data.list[0].avgTalkDuration)

3. 复杂业务使用 moment.js

安装: cnpm install moment –save
vue中使用:

import moment from 'moment'
<div>{{dateBegin | formatDate}}</div>
filters: {
formatDate: function (value) {
return moment(value).format('YYYY-MM-DD')
}
},
submit() {
console.log(moment(this.dateBegin).format('YYYY-MM-DD'))
}
import moment from 'moment' <div>{{dateBegin | formatDate}}</div> filters: { formatDate: function (value) { return moment(value).format('YYYY-MM-DD') } }, submit() { console.log(moment(this.dateBegin).format('YYYY-MM-DD')) }
import moment from 'moment'

    <div>{{dateBegin | formatDate}}</div>


    filters: {
      formatDate: function (value) {
        return moment(value).format('YYYY-MM-DD')
      }
    },



        submit() {
            console.log(moment(this.dateBegin).format('YYYY-MM-DD'))
        }

 

发表评论

邮箱地址不会被公开。 必填项已用*标注