mirror of
https://gitee.com/java110/WechatOwnerService.git
synced 2026-02-24 05:46:04 +08:00
46 lines
1.3 KiB
JavaScript
46 lines
1.3 KiB
JavaScript
import {isNull} from './StringUtil.js'
|
|
export function encodeUrl(_url){
|
|
if(isNull(_url)){
|
|
return _url;
|
|
}
|
|
_url = _url.replace("?","**");
|
|
_url = _url.replaceAll("&","@@");
|
|
_url = _url.replace("#","!!");
|
|
return _url;
|
|
}
|
|
|
|
export function decodeUrl(_url){
|
|
if(isNull(_url)){
|
|
return _url;
|
|
}
|
|
if(_url.indexOf("?")>-1){
|
|
_url = _url.replaceAll("**", "&"); //已经有?了
|
|
}else{
|
|
_url = _url.replace("**", "?"); //已经有?了
|
|
}
|
|
_url = _url.replace("!!", "#");
|
|
_url = _url.replace("$$", "#");
|
|
_url = _url.replaceAll("@@", "&");
|
|
_url = _url.replaceAll("**", "&"); //已经有?了
|
|
|
|
return _url;
|
|
}
|
|
|
|
export function getPageUrl(){
|
|
let pages = getCurrentPages()
|
|
let len = pages.length
|
|
let curParam = pages[len - 1].options //获取当前页面参数
|
|
let param = []
|
|
for (let key in curParam) { //获取key=value键值对格式数组
|
|
param.push(key + '=' + curParam[key])
|
|
}
|
|
let _url = '' //除去第一个参数拼接后面参数
|
|
param.forEach((item, i) => {
|
|
if (i != 0) { //拼接&符号,由于第一组前拼接的是?所有第一组需要单独处理
|
|
_url += '&' + item
|
|
}
|
|
})
|
|
let url = '/' + pages[len - 1].route + '?' + param[0] + _url //最终格式**/pages/index/index/?id=11&name='boyyang'&sex='man'**
|
|
return url;
|
|
}
|