vue获取后台的时间数据时,服务器端返回的时间大多时候都是毫秒类型,这样是非常不美观的,如下图所示。

因此我们可以设定一个全局的时间过滤器来美化时间的显示形式。

1.首先,我们现在main.js中定义一个全局的过滤器

// originVal 后台返回的毫秒
Vue.filter('dataFormat', 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 slot-scope='scope'>
{{ scope.row.create_time | dataFormat }}
</template>

3.执行上述步骤后,我们的时间会变成下面这种形式

Last modification:July 16th, 2020 at 04:13 pm
如果觉得我的文章对你有用,请随意赞赏