由於我用的是vue,在這裏僅用vue作爲示範:
1、新建一個js文件,名字隨便起,這裏以 geturl.js 作爲示範,代碼如下:
export default {
getUrlKey: function (name) {
return decodeURIComponent(
(new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ""])[1].replace(/\+/g, '%20')) || null;
},
delUrlKey:function (name) {
var loca = window.location;
var baseUrl = loca.origin + loca.pathname + "?";
var query = loca.search.substr(1);
if (query.indexOf(name) > -1) {
var obj = {}
var arr = query.split("&");
for (var i = 0; i < arr.length; i++) {
arr[i] = arr[i].split("=");
obj[arr[i][0]] = arr[i][1];
}
delete obj[name];
var url = baseUrl + JSON.stringify(obj).replace(/[\"\{\}]/g, "").replace(/\:/g, "=").replace(/\,/g, "&");
return url
} else {
return window.location.href;
}
}
}
2、這個文件我放在src裏面裏面的,與main.js同級,
3、在main.js裏面進行引用,並暴露到全局
4、在代碼中使用:
let urlOpenid = this.$geturl.getUrlKey('openid');