vue中使用moment把时间戳 格式化为 时间格式(YYYY-MM-DD)

    xiaoxiao2023-11-03  224

    1 首先在vue项目中

    npm install moment --save

    2. 定义时间格式化全局过滤器 在main.js中或组件中导入该组件

    import moment from 'moment'

    3. 用法一 在全局中定义时间格式化 在main.js中引入moment

    // 定义一个全局过滤器实现日期格式化 Vue.filter('datefmt', function (input, fmtstring) { return moment.unix(input).format(fmtstring) })

    这样就可以在我们需要对时间进行格式化的组件中进行使用了,如下:

    <div> <span>{{item.publishdate | datefmt('MM/DD')}}</span> <span>{{item.publishdate | datefmt('YYYY')}}</span> </div>

    这里我有两个span标签,第一个是将时间戳格式为 月/日(11/24) 这样的格式,第二个则是格式化为年份值(如2018这样的)

    4.用法二:

    如果我们项目所需的格式都是统一格式的(例如都显示为2018-09-06),那么可以在main.js中进行统一格式样式的设置,如下:

    Vue.filter('datefmt', function (input, 'YYYY-MM-DD') { return moment.unix(input).format('YYYY-MM-DD') })

    然后在组件中这样使用即可

    <span>{{item.publishdate | datefmt}}</span>

    5.用法三 在vue methods方法中使用

    const data = moment(时间戳).format('YYYY-MM-DD HH:mm:ss') console.log(data) // "2019-05-25 08:23:56"

    6 . 时间转时间戳 直接把字符串传到Date对象里他会帮你转成时间的

    var timeStr1 = '2018/08/08'; var timeStr2 = '2018/12/12'; var time1 = new Date(timeStr1).getTime(); var time2 = new Date(timeStr2).getTime(); console.log(time1 ) // 1558972800000
    最新回复(0)