封装时间的方法

5 篇文章 0 订阅
5 篇文章 0 订阅

在utils文件夹下创建一个index.js文件
在这里插入图片描述
封装时间的方法

/**
 *
 * @param {Date} 时间戳
 * @returns {string}
 */
export function formatDate(value) {
  var date = new Date(value)
  var y = date.getFullYear()
  var m = date.getMonth() + 1
  var d = date.getDate()
  var h = date.getHours()
  var i = date.getMinutes()
  var s = date.getSeconds()
  if (m < 10) { m = '0' + m }
  if (d < 10) { d = '0' + d }
  if (h < 10) { h = '0' + h }
  if (i < 10) { i = '0' + i }
  if (s < 10) { s = '0' + s }
  var t = y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s
  return t
}
// 处理默认选中当前日期
export function getNowTime() {
  var now = new Date()
  var year = now.getFullYear() // 得到年份
  var month = now.getMonth() // 得到月份
  var date = now.getDate() // 得到日期
  var hour = ' 00:00:00' // 默认时分秒 如果传给后台的格式为年月日时分秒,就需要加这个,如若不需要,此行可忽略
  month = month + 1
  month = month.toString().padStart(2, '0')
  date = date.toString().padStart(2, '0')
  var defaultDate = `${year}-${month}-${date}${hour}`
  return defaultDate
}

// 处理默认选中当前日期
export function getEndTime() {
  var date = new Date()
  // 年 getFullYear():四位数字返回年份
  var year = date.getFullYear() // getFullYear()代替getYear()
  // 月 getMonth():0 ~ 11
  var month = date.getMonth() + 1
  // 日 getDate():(1 ~ 31)
  var day = date.getDate()
  // 时 getHours():(0 ~ 23)
  var hour = date.getHours()
  // 分 getMinutes(): (0 ~ 59)
  var minute = date.getMinutes()
  // 秒 getSeconds():(0 ~ 59)
  var second = date.getSeconds()
  // 月 转化为两位数
  month = month.toString().padStart(2, '0')
  // 日 转化为两位数
  day = day.toString().padStart(2, '0')
  // 时 转化为两位数
  hour = hour.toString().padStart(2, '0')
  // 分 转化为两位数
  minute = minute.toString().padStart(2, '0')
  // 秒 转化为两位数
  second = second.toString().padStart(2, '0')
  var time =
        year +
        '-' +
        month +
        '-' +
        day +
        ' ' +
        hour +
        ':' +
        minute +
        ':' +
        second
  console.log(time)
  return time
}

就可以在使用的地方 引用方法了
在这里插入图片描述
在data中可以直接使用
在这里插入图片描述

import { getSystem } from '@/api/self/request/request'
import { getNowTime, getEndTime } from '@/utils/index'
import { Message } from 'sec-ui'
const system = {
  namespaced: true,
  state: {
    filterForm: {
      operType: '',
      username: '',
      clientIp: '',
      tenantName: '',
      startTime: getNowTime(),
      endTime: getEndTime(),
      page: {
        pageNum: 1,
        pageSize: 10
      }
    },
    total: 0,
    tableData: [],
    syslist: {},
    dialogVisible: false,
    loading: false
  },
  mutations: {
    openDetailDialog(state, data) {
      state.syslist = data
      state.dialogVisible = true
    },
    closeDetailDialog(state) {
      state.dialogVisible = false
    },
    changePageSize(state, data) {
      state.filterForm.page.pageSize = data
    },
    changePageNum(state, data) {
      state.filterForm.page.pageNum = data
    },
    setDataList(state, { list = [], total = 0 }) {
      state.tableData = list
      state.total = total
    },
    setLoading(state, data) {
      state.loading = data
    },
    resetFilterForm(state, data) {
      state.filterForm.operType = ''
      state.filterForm.username = ''
      state.filterForm.clientIp = ''
      state.filterForm.tenantName = ''
    }

  },
  actions: {
    async getSystemList({ state, commit }) {
      try {
        commit('setLoading', true)
        const param = {
          ...state.filterForm,
          startTime: new Date(state.startTime),
          endTime: new Date(state.endTime)
        }
        const res = await getSystem(param)
        commit('setLoading', false)
        const ol = res.result.records.map((item) => {
          return item.length
        })
        if (ol.length === 0) {
          Message.info('此时间段没有数据,另选时间段')
        }
        if (res.result) {
          commit('setDataList', {
            list: res.result.records,
            total: parseInt(res.result.total)
          })
        } else {
          Message.error(res.msg || '查询数据失败')
        }
      } catch (error) {
        throw new Error(error)
      }
    }
  }
}
export default system

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值