1.url为以下形式,参数在hash值后面
https://xxx.xxx.xxx/home/message/detail?code=666&title=111
https://xxx.xxx.xxx/#/home/message/detail?code=666&title=111
获取code
this.$route.query.id
this.$route.query.title
2.url为以下形式,参数在hash值前面
https://xxx.xxx.xxx/?code=666&title=111#/home/message/detail
获取code
// 截取字符串 封装函数
function getParams(url) {
// console.log("url",url);
let obj = {};
let index = url.indexOf('?'); // 看url有没有参数
// console.log("index",index);
let params = url.substr(index + 1); // 截取url参数部分 id = 1 & type = 2
//console.log(params);
if (index != -1) { // 有参数时
let parr = params.split('&'); // 将参数分割成数组 ["id = 1 ", " type = 2"]
for (let i of parr) { // 遍历数组
let arr = i.split('='); // 1) i id = 1 arr = [id, 1] 2)i type = 2 arr = [type, 2]
obj[arr[0]] = arr[1]; // obj[arr[0]] = id, obj.id = 1 obj[arr[0]] = type, obj.type = 2
}
}
return obj;
};
// 截取 参数为一个对象
let obj = this.getParams(window.location.href)
// console.log("路由参数", obj);
//获取对象里面的code值
let wxCode = obj.code;
// console.log(wxCode);
// wxCode为最终截取的code值!!!!!!!!!!!!!!!!!!!!!!!!