20、url参数获取

84 阅读1分钟
/**
	 * 获取url上指定参数
	 *
	 * @returns
	 */
getCode(name) {
      const param = window.location.href.split('?')[1] ? window.location.href.split('?')[1].split('#')[0] : ""
      if (param) {
        var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)')
        var r = param.match(reg)
        if (r !== null) {
          return unescape(r[2])
        }
      }
      return null
    },
    
    
    
queryURLParams() {
			const URL = window.location.href;
			console.log("是否链接跳转来的", URL.includes("?"),'---url---',URL);
			if (URL.includes("?")) {
				this.getUrlParams(URL);
			}
		},
		getUrlParams(URL) {
			let url = URL.split("?")[1];
			let infoObj = {}; // 声明参数对象
			let arr = url.split("&"); // 以&符号分割为数组
			for (let i = 0; i < arr.length; i++) {
				let arrNew = arr[i].split("="); // 以"="分割为数组
				infoObj[arrNew[0]] = arrNew[1];
			}
			var isData= JSON.stringify(infoObj)!='null';
			console.log('*******路由参数infoObj*******', infoObj, isData);
		},
     /**
	 * 获取请求参数
	 *
	 * @returns
	 */
	getQueryParam() {
		let urlParams = {},
			href = location.href;
		let index = href.indexOf('?');
		if (index < 0) return urlParams;
		let paramString = decodeURIComponent(href.substr(index + 1));
		let paramArray = paramString.split('&');
		paramArray.forEach(ele => {
			let i = ele.indexOf('=');
			let key = ele.substr(0, i);
			let value = ele.substr(i + 1);
			if (key) {
				urlParams[key] = value;
			}
		});

		return urlParams;
	},