引入的ip地址,打包以后可以随意更改

我用我自己的方法,也是实验一步一步搞出来的,被我们运维打了好几顿才出现的结果。不喜勿喷。

第一步,我们把写上地址的js文件放在vue的静态文件里,老项目都是static,新项目都是放在public文件里。这样打包以后,文件是在static的外面。未受打包影响,命名自己起。如下:

 打包以后的效果就是:

新老项目不影响接下来的操作,只是两种不同的存放方式。

第二步就是怎么写baseurl.js文件的内容了,如下:

 我们存入本地以后,打包以后是访问变量,如果不存本地,直接引入baseurl使用,你会发现,引入的虽然是变量,但是打包以后,确实是实实在在的ip的地址。

 这样就算在外部更改了ip地址,打完的包也不会更改里面的内容了。

第三步,引入到vue成为全局变量:

第四步,去改变axios的请求路径:

axios去请求你们的接口就可以了,axios的写法各不相同,看个人习惯吧。

第五步:在html中引入baseurl,并执行

至此,大功告成,写完收工。然后你的ip地址就可以随便写了,最后让运维给你修改下地址即可。

其实最根本的理解就是打包以后,让引入的ip地址变成变量,所以解决的方法就有很多很多了。

这种方法有个弊端,就是打包之后,router会比html文件里的baseUrl先执行,如果在router里面写ip的话,获取不到。所以我们就把他放在router中引入

 如果还是行不通的话,你可以把baseurl中用class的方式写入,在router中用new baseUrl()来操作

 这样打完包,在包中是搜索不到ip地址的。

原文地址:https://www.cnblogs.com/supermanYU/p/15637767.html