添加组件及页面

This commit is contained in:
zhengw
2026-01-21 17:05:30 +08:00
parent a89e69c381
commit 7ff1a911dd
54 changed files with 1078 additions and 1009 deletions

View File

@@ -1,4 +1,4 @@
import { http } from "./config";
import { http } from './config';
export const formatTime = (date: Date) => {
const year = date.getFullYear();
@@ -8,13 +8,9 @@ export const formatTime = (date: Date) => {
const minute = date.getMinutes();
const second = date.getSeconds();
return `${[year, month, day].map(formatNumber).join("-")} ${[
hour,
minute,
second,
]
return `${[year, month, day].map(formatNumber).join('-')} ${[hour, minute, second]
.map(formatNumber)
.join(":")}`;
.join(':')}`;
};
export const formatNumber = (n: number | string) => {
@@ -23,11 +19,7 @@ export const formatNumber = (n: number | string) => {
};
// 对话框
export const showModal = (
title: string,
content: string,
showCancel = false
) => {
export const showModal = (title: string, content: string, showCancel = false) => {
return new Promise<void>((resolve, reject) => {
wx.showModal({
title,
@@ -56,7 +48,7 @@ export const toArray = (data: any): any[] => (isArray(data) ? data : []);
/** 判断数据是不是对象类型 */
export const isObject = (data: any) => {
return data && `${Object.prototype.toString.call(data)}`.includes("Object");
return data && `${Object.prototype.toString.call(data)}`.includes('Object');
};
export const toObject = (data: any) => (isObject(data) ? data : {});
@@ -66,15 +58,15 @@ export const reloadPage = () => {
let currentPage = pages[pages.length - 1]; //获取当前页面的对象
let url = currentPage.route; //当前页面url
// 关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面。
wx.redirectTo({ url: "/" + url });
wx.redirectTo({ url: '/' + url });
};
/** 判断是json数据 */
export const isJson = (str: any) => {
if (str && typeof str == "string") {
if (str && typeof str == 'string') {
try {
const obj = JSON.parse(str);
return obj && typeof obj == "object";
return obj && typeof obj == 'object';
} catch (_e) {
//
}
@@ -89,24 +81,16 @@ export const isJson = (str: any) => {
*/
export const jsonParse = (data: any): any[] | object | null => {
if (data) {
if (typeof data == "string") {
if (typeof data == 'string') {
try {
const obj = JSON.parse(data);
if (
["Array", "Object"].includes(
Object.prototype.toString.call(obj).slice(8, -1)
)
) {
if (['Array', 'Object'].includes(Object.prototype.toString.call(obj).slice(8, -1))) {
return obj;
}
} catch (e) {
//
}
} else if (
["Array", "Object"].includes(
Object.prototype.toString.call(data).slice(8, -1)
)
) {
} else if (['Array', 'Object'].includes(Object.prototype.toString.call(data).slice(8, -1))) {
return data;
}
}
@@ -142,10 +126,10 @@ export const formatToDecimals = (str: any, num: number = 2) => {
};
/** 获取权限 */
export const getAuthInfo = () => toObject(wx.getStorageSync("auth_info"));
export const getAuthInfo = () => toObject(wx.getStorageSync('auth_info'));
export const goIndexPage = () => {
wx.navigateTo({ url: "/pages/index/index" });
wx.navigateTo({ url: '/pages/index/index' });
};
export const isImageFile = (path: string) => {
@@ -161,12 +145,12 @@ export const scrollToTop = () => {
export const tabsConfigSet = (key: string, value: any) => {
const tabsConfig = toObject(tabsConfigGet());
tabsConfig[key] = value;
setStorage("tabsConfig", tabsConfig);
setStorage('tabsConfig', tabsConfig);
};
/** 获取tabs配置 */
export const tabsConfigGet = () => {
return getStorage("tabsConfig");
return getStorage('tabsConfig');
};
/**
@@ -175,28 +159,24 @@ export const tabsConfigGet = () => {
* @param {*} currentUrl 当前数据地址
*/
export const mediaPreview = (imageUrls: any[], currentUrl: string) => {
console.log("媒体图片预览方法");
console.log('媒体图片预览方法');
const lastLen =
`${currentUrl}`.indexOf("?") > -1
? `${currentUrl}`.indexOf("?")
: `${currentUrl}`.length;
`${currentUrl}`.indexOf('?') > -1 ? `${currentUrl}`.indexOf('?') : `${currentUrl}`.length;
const suffix: any = currentUrl
.substring(currentUrl.lastIndexOf(".") + 1, lastLen)
.substring(currentUrl.lastIndexOf('.') + 1, lastLen)
.toLocaleLowerCase();
if (isImageFile("." + suffix)) {
if (isImageFile('.' + suffix)) {
wx.previewImage({ urls: imageUrls, current: currentUrl, showmenu: true });
} else if (["mp3", "mp4", "m4a"].includes(suffix)) {
} else if (['mp3', 'mp4', 'm4a'].includes(suffix)) {
wx.previewMedia({
sources: [{ url: currentUrl, type: "video" }],
sources: [{ url: currentUrl, type: 'video' }],
fail() {
wx.showToast({ title: "播放失败" });
wx.showToast({ title: '播放失败' });
},
});
} else if (
["doc", "docx", "xls", "xlsx", "ppt", "pptx", "pdf"].includes(suffix)
) {
} else if (['doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'pdf'].includes(suffix)) {
const downloadTask = wx.downloadFile({
url: currentUrl,
header: http.header,
@@ -223,7 +203,7 @@ export const mediaPreview = (imageUrls: any[], currentUrl: string) => {
}
});
} else {
wx.showToast({ title: "请前往网页端下载查看" });
wx.showToast({ title: '请前往网页端下载查看' });
}
};
@@ -232,29 +212,29 @@ export const mediaPreview = (imageUrls: any[], currentUrl: string) => {
* @param {*} option {filePath: '文件路径', name: 'files', url:'上传url',formData: {额外data},success: (data)=>{}, complete:()=>{},fail: ()=>{} }
*/
export const uploadFile2 = (option: any) => {
console.log("文件上传封装");
console.log('文件上传封装');
option = toObject(option);
option.name = option.name || "files";
option.name = option.name || 'files';
wx.showLoading({ title: "文件上传中..." });
wx.showLoading({ title: '文件上传中...' });
wx.uploadFile({
filePath: option.filePath,
name: option.name,
header: {
...http.header,
cookie: "DFSESSID=" + wx.getStorageSync("session_id"),
cookie: 'FREESESSID=' + wx.getStorageSync('session_id'),
},
formData: option.formData,
url: option.url,
success(res) {
const resData = jsonParse(res.data);
wx.showToast({ title: "上传成功" });
wx.showToast({ title: '上传成功' });
if (option.success) {
option.success(resData);
}
},
fail() {
wx.showToast({ title: "上传失败" });
wx.showToast({ title: '上传失败' });
if (option.fail) {
option.fail();
}
@@ -277,15 +257,15 @@ export const getDataSet = (e: any) => {
};
export const toastSuccess = (title: string) => {
wx.showToast({ title: `${title}`, icon: "success" });
wx.showToast({ title: `${title}`, icon: 'success' });
};
export const toastError = (title: string) => {
wx.showToast({ title: `${title}`, icon: "error" });
wx.showToast({ title: `${title}`, icon: 'error' });
};
export const toastSuccessNotIcon = (title: string) => {
wx.showToast({ title: `${title}`, icon: "none" });
wx.showToast({ title: `${title}`, icon: 'none' });
};
export const getEnvVersion = wx.getAccountInfoSync().miniProgram.envVersion;
@@ -295,7 +275,8 @@ export const getEnvVersion = wx.getAccountInfoSync().miniProgram.envVersion;
* @param key string
*/
export const getStorage = (key: string) => {
return wx.getStorageSync(`${getEnvVersion}_${key}`);
// return wx.getStorageSync(`${getEnvVersion}_${key}`);
return wx.getStorageSync(key);
};
/**
@@ -304,7 +285,8 @@ export const getStorage = (key: string) => {
* @param data any
*/
export const setStorage = (key: string, data: any) => {
return wx.setStorageSync(`${getEnvVersion}_${key}`, data);
// return wx.setStorageSync(`${getEnvVersion}_${key}`, data);
return wx.setStorageSync(key, data);
};
/**
@@ -312,7 +294,8 @@ export const setStorage = (key: string, data: any) => {
* @param key string
*/
export const removeStorage = (key: string) => {
return wx.removeStorageSync(`${getEnvVersion}_${key}`);
// return wx.removeStorageSync(`${getEnvVersion}_${key}`);
return wx.removeStorageSync(key);
};
/**
@@ -323,4 +306,3 @@ export const getCurrentPageRoute = () => {
const currentPage = pages[pages.length - 1]; // 获取当前页面对象
return `/${currentPage.route}`; // 获取当前页面路径
};