在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