vue中配置文件 vue.config.js 中如何获取 window.location?

问题描述

在vue的配置文件vue.config.js 中如何获取 当前页面的路由?

问题出现的环境背景及自己尝试过哪些方法

使用过 window.location?但是在配置文件中 获取不到

相关代码

粘贴代码文本(请勿用截图)

你期待的结果是什么?实际看到的错误信息又是什么?

阅读 4.6k
4 个回答
新手上路,请多包涵

常用取url参数的方法

1.正则方式
复制代码

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"));
alert(GetQueryString("参数名3"));

复制代码

2.字符串方式
复制代码

function GetRequest() {
var url = location.search; //获取url中"?"符后的字串
var theRequest = new Object();
if (url.indexOf("?") != -1) {

var str = url.substr(1);
strs = str.split("&");
for(var i = 0; i < strs.length; i ++) {
  theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
}
 //也可以这样写
//strs.map(item => theRequest[item.split("=")[0]] = unescape(item.split("=")[1]));

}

return theRequest;
}

// 调用方式
var urlParams = GetRequest();
urlParams["参数名称"]

复制代码

没有办法获取,我的理解是vue.config.js是个配置文件,不能获取到浏览器运行时的东西

这个是不能的,你可以描述出你要实现啥功能,实现这个功能应该不止一种解决方案的

我猜你是想根据不同的环境配置不同的域名,应该需要的是环境变量

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏