本来项目的baseUrl地址是放在src/common/config.js ,可是这有一个缺点,就是本地测试一个地址,生产一个地址。每发一次不一样環境的包就要build一下,太麻烦了!有没有解决的办法呢?ios
咱们知道static下面的文件,会原本来本打包到dist下面的。因此咱们能够把src/common/config.js 放到static文件下,那麼只要build一次,在config.js上修改baseUrl就能够了。axios
一、在static 建立一个文件夹common。里面建立一个config.js文件服务器
二、 在index.js中引入测试
<script src="./static/common/config.js"></script>
三、在http.js中ui
axios.defaults.baseURL = window.default.baseURL;
四、打包后,能够在dist/static发现common/config.js文件。打开就能够修改里面的baseUrl而后更新到不一样的服务器上spa
遇到問題code
好比要在界面上要要顯示圖片blog
還沒有提取config.js 是這樣寫的ip
let _img = img?config.default.baseUrl+'/'+img:'';
let _img = img?window.default.baseUrl+'/'+img:'';
中間這個undefined是什麼鬼東西。io
原來是 window.default.baseUrl 是undefined
怎麼解決呢?
let _img = img?`${window.default.baseURL}`+'/'+img:'';