vue-cli-plugin-element-zkml
Version:
Quickly build a backend system with vue-cli and element-ui in seconds.
98 lines (91 loc) • 2.16 kB
JavaScript
/**
* 基础工具类
*/
// 获取当前登录页地址
const getLoginUrl = () => {
let hrefCode = window.location.href;
let loginHref = ''
if (hrefCode.indexOf('.com') >= 0 || hrefCode.indexOf('.cn') >= 0) {
let a = window.location.href.split('//')
let b = a[1].split('/')
let c = b[0].split(':')
let d = c[0].split('.')
let e = ''
for (let value of d) {
e += value;
}
loginHref = `http://${b[0]}/logins/${e}.html`
} else {
loginHref = '/login'
}
return loginHref;
};
// 生成十位字母加数字随机数
const getRandom = () => {
// 生成十位字母加数字随机数
let arr = []
for (let i = 0; i < 1000; i++) {
let n = Math.random().toString(36).substr(2, 5)
arr.push(n)
}
// 去重
let ukeys = []
for (let i = 0; i < arr.length; i++) {
if (ukeys.indexOf(arr[i]) === -1) {
ukeys.push(arr[i])
}
}
let keys = ''
for (let i = 0; i < ukeys.length; i++) {
keys += ukeys[i]
}
return keys.substr(0, 5)
};
// cookie缓存
const cookie = {
get(name) {
let reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)');
let arr = document.cookie.match(reg)
if (document.cookie.match(reg)) {
return unescape(arr[2]);
} else {
return null;
}
},
set(name, value, expiredays) {
let exdate = new Date();
exdate.setDate(exdate.getDate() + expiredays)
document.cookie = name + '=' + escape(value) + ((expiredays === null) ? '' : ';expires=' + exdate.toGMTString())
}
};
// sessionStorage缓存
const ss = {
get(name) {
return sessionStorage.getItem(name);
},
set(name, data) {
sessionStorage.setItem(name, data);
},
remove(name) {
sessionStorage.removeItem(name);
}
};
// localStorage缓存
const ls = {
get(name) {
return localStorage.getItem(name);
},
set(name, data) {
localStorage.setItem(name, data);
},
remove(name) {
localStorage.removeItem(name);
}
};
export default {
getLoginUrl, // 获取当前登录页地址
getRandom, // 生成十位字母加数字随机数
cookie, // cookie缓存
ss, // sessionStorage缓存
ls // localStorage缓存
};