/** * 通用js方法封装处理 * Copyright (c) 2019 ruoyi */ import dayjs from '@/uni_modules/uview-ui/libs/util/dayjs.js' // 日期格式化 export function parseTime(time, pattern) { if (arguments.length === 0 || !time) { return null } const format = pattern || '{y}-{m}-{d} {h}:{i}:{s}' let date if (typeof time === 'object') { date = time } else { if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) { time = parseInt(time) } else if (typeof time === 'string') { time = time.replace(new RegExp(/-/gm), '/').replace('T', ' ').replace(new RegExp(/\.[\d]{3}/gm), ''); } if ((typeof time === 'number') && (time.toString().length === 10)) { time = time * 1000 } date = new Date(time) } const formatObj = { y: date.getFullYear(), m: date.getMonth() + 1, d: date.getDate(), h: date.getHours(), i: date.getMinutes(), s: date.getSeconds(), a: date.getDay() } const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => { let value = formatObj[key] // Note: getDay() returns 0 on Sunday if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value] } if (result.length > 0 && value < 10) { value = '0' + value } return value || 0 }) return time_str } /** * 时间日期转换 * @param {dayjs.ConfigType} date 当前时间,new Date() 格式 * @param {string} format 需要转换的时间格式字符串 * @description format 字符串随意,如 `YYYY-mm、YYYY-mm-dd` * @description format 季度:"YYYY-mm-dd HH:MM:SS QQQQ" * @description format 星期:"YYYY-mm-dd HH:MM:SS WWW" * @description format 几周:"YYYY-mm-dd HH:MM:SS ZZZ" * @description format 季度 + 星期 + 几周:"YYYY-mm-dd HH:MM:SS WWW QQQQ ZZZ" * @returns {string} 返回拼接后的时间字符串 */ export function formatDate(date, format = 'YYYY-MM-DD HH:mm:ss') { // 日期不存在,则返回空 if (!date) { return ''; } // 日期存在,则进行格式化 if (format === undefined) { format = 'YYYY-MM-DD HH:mm:ss'; } return dayjs(date).format(format); } /** * 查看位置 * @param {number} lat 经度 * @param {number} lng 纬度 * @param {string} name 地址名称 */ export function viewPosition({ lat, lng, name = '', address = '' }) { uni.openLocation({ latitude: Number(lat), longitude: Number(lng), name, address, fail: (err) => { console.log(err); } }) } /** * 加载 */ export function loading(title = '加载中') { uni.showLoading({ mask: true, title }) function close() { uni.hideLoading() } return { close } } /** * 预览图片 */ export function perviewImage(url) { uni.previewImage({ urls: [...url], //需要预览的图片http链接列表,多张的时候,url直接写在后面就行了 current: '', // 当前显示图片的http链接,默认是第一个 success: function(res) {}, fail: function(res) {}, complete: function(res) {}, }) }