vue (毫秒转换成日期)

第一步

确定是否基于vue(是否有用到npm)

第二步

选择一个文件,在下面创建一个js文件,命名随意(举例:filters.js)

第三步

复制下方代码,粘贴到刚建下的js文件当中

export function formatDate (date, fmt) {
  if (/(y+)/.test(fmt)) {
    fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
  }

  const o = {

    'M+': date.getMonth() + 1,

    'd+': date.getDate(),

    'h+': date.getHours(),

    'm+': date.getMinutes(),

    's+': date.getSeconds()

  }

  for (const k in o) {
    if (new RegExp(`(${k})`).test(fmt)) {
      const str = o[k] + ''

      fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str))
    }
  }

  return fmt
}

function padLeftZero (str) {
  return ('00' + str).substr(str.length)
}

第四步

在需要转换成日期的vue文件当中引入:

import { formatDate } from '@/store/filters'

如下图:

并在创建的Vue实例中写入:

filters: {
    formatDate (time) {
      const data = new Date(time)
      return formatDate(data, 'yyyy-MM-dd')
    }
  },

第五步

在所需要转换的vue property的后面加上

 | formatDate  (注意:这里的formatDate必须和上面在filters中定义的名子一样)

实例:

拓展

可取小数点后自定义N位

filters: {
numFilterZero(value) {
				//截取LeftOne当前小数点后三位{{}}
				let realVal = parseFloat(value).toFixed(0)
				return realVal
		}
}
posted @ 2022-04-18 11:12  小白的豪豪  阅读(652)  评论(0)    收藏  举报