h5项目URL自拼接一个参数token,页面中获取token作为登录验证,
(1)window.location.search 【链接中参数位置应该在#之前 query在hash前面】
假定原地址为 http://X.X.X.X:8080/#/
添加参数之后: http://X.X.X.X:8080/?token=123&id=456#/
接收方式:
字符串方式:
var url = window.location.search;
var theRequest = new Object();
if (url.indexOf("?") != -1) {
var str = url.substr(1);
var strs = str.split("&");
for (var i = 0; i < strs.length; i++) {
theRequest[strs[i].split("=")[0]] = (strs[i].split("=")[1]);
}
}
console.log(theRequest)
正则方式:
function GetQueryString(name)
{
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
// 调用方法
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
相关文档:window.location属性用法及解决一个window.location.search为什么为空的问题
(2)this.$route.query 【链接中参数位置应该在#之后 query在hash后面】
【 this.$route.query.name this.$route.query.pas 】
假定原地址为 http://X.X.X.X:8080/#/
添加参数之后: http://X.X.X.X:8080/#/?token=123&id=456