前端项目将毫秒数转换为日期格式

本文介绍了如何在Vue应用中通过两种方法实现全局日期格式化,一是直接使用自定义filter,二是借助moment.js插件。实例演示了如何在el-table中展示时间戳并格式化为'年-月-日 时:分:秒'。
摘要由CSDN通过智能技术生成

方法一:在main.js里面注册全局过滤器
1.在main.js里面注册全局过滤器

Vue.filter('dateFormat', function (originVal) {
  const dt = new Date(originVal)
  const y = dt.getFullYear()
  const m = (dt.getMonth() + 1 + '').padStart(2, '0')
  const d = (dt.getDate() + '').padStart(2, '0')
  const hh = (dt.getHours() + '').padStart(2, '0')
  const mm = (dt.getMinutes() + '').padStart(2, '0')
  const ss = (dt.getSeconds() + '').padStart(2, '0')
  //时间格式年月日、时分秒
  return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
})

2.在页面中使用

<template>
	<el-table
      height="74%"
      border
      highlight-current-row
      :default-sort="{ prop: 'plantStationUpdateTime', order: 'descending' }"
      :data="tableData"
      style="border-bottom: 1px solid black"
      @selection-change="selectChange"
    >
      <el-table-column type="selection"></el-table-column>
      <el-table-column
        type="index"
        width="60"
        align="center"
        :index="(queryInfo.num - 1) * queryInfo.pagesize + 1"
      ></el-table-column>
      <el-table-column label="时间" prop="create_time">
        <template>{{ timeStamp | dateFormat }}</template>
      </el-table-column>
    </el-table>
 </template>
 
<script>
export default {
  data() {
    return {
      timeStamp: new Date(),
    }
  },
}
</script>

方法二:使用moment.js插件
1.下载moment插件

npm install moment --save   # npm

2.在main.js里面注册


import moment from 'moment'

// 将时间戳转换为日期格式
Vue.filter('dateFormat', (datestr, patten = 'YYYY-MM-DD HH:mm:ss') => {
  return moment(datestr).format(patten)
})

3.在页面中使用

<template>
	<el-table
      height="74%"
      border
      highlight-current-row
      :default-sort="{ prop: 'plantStationUpdateTime', order: 'descending' }"
      :data="tableData"
      style="border-bottom: 1px solid black"
      @selection-change="selectChange"
    >
      <el-table-column type="selection"></el-table-column>
      <el-table-column
        type="index"
        width="60"
        align="center"
        :index="(queryInfo.num - 1) * queryInfo.pagesize + 1"
      ></el-table-column>
      <el-table-column label="时间" prop="create_time">
        <template>{{ timeStamp | dateFormat }}</template>
      </el-table-column>
    </el-table>
 </template>
 
<script>
export default {
  data() {
    return {
      timeStamp: new Date(),
    }
  },
}
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值