Files
xdd-uniapp-new/assets/script/global.js
T

110 lines
3.1 KiB
JavaScript

export default {
// 通用导航
commonJump: (uniapp_url) => {
let query = uniapp_url.indexOf("?name=");
if (query > -1) {
let start = query + 6;
let name = uniapp_url.substring(start)
uni.setStorageSync("name", name)
uni.switchTab({
url: uniapp_url
})
}
switch (uniapp_url) {
case "":
uni.showToast({
title: "开发中,敬请期待",
icon: 'none'
})
break;
default:
uni.navigateTo({
url: uniapp_url
})
break;
}
},
levelJump: (level, url, params) => {
if (params) url += `?${params}`
if (level === 1) {
uni.switchTab({url})
} else {
uni.navigateTo({url})
}
},
navToGoods: (id) => {
uni.navigateTo({
url: "/pages/shop/GoodsCon/index?id=" + id
})
},
goSupplierMini() {
// 区分当前小程序环境:正式版跳正式版,体验版/开发版跳体验版
let envVersion = 'release'
try {
const accountInfo = uni.getAccountInfoSync()
if (accountInfo && accountInfo.miniProgram && accountInfo.miniProgram.envVersion !== 'release') {
envVersion = 'trial'
}
} catch (e) {
envVersion = 'release'
}
uni.navigateToMiniProgram({
appId: "wx9ca93d1f2a9c8156",
path: "pages/auth/login",
envVersion,
success(msg) {
console.log("success", msg)
},
fail(err) {
console.log("fail", err)
},
complete(msg) {
console.log("complete", msg)
}
})
},
diffSSS: (date) => {
if (typeof date !== "string") return 0;
date = date.substring(0, 19);
date = date.replace(/-/g, '/');
let timestamp = new Date(date).getTime();
let now = new Date().getTime();
return timestamp - now;
},
//生成n位数字字母混合字符串
generateMixed(n) {
let chars = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',
'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
let res = "";
for (let i = 0; i < n; i++) {
let id = Math.floor(Math.random() * 36);
res += chars[id];
}
return res;
},
deepClone(val) {
let oVal = Array.isArray(val) ? [] : {};
for (let v in val) {
if (val.hasOwnProperty(v)) {
if ('object' === typeof val[v]) {
//这里是深拷贝的关键所在(递归调用)
oVal[v] = this.deepClone(val[v]);
} else {
oVal[v] = val[v];
}
}
}
return oVal;
}
}