如何将baseUrl项目地址提取放到放到static


原本项目的baseUrl地址是放在src/common/config.js ,但是这有一个缺点,就是本地测试一个地址,生产一个地址。每发一次不同環境的包就要build一下,太麻烦了!有没有解决的办法呢?

我们知道static下面的文件,会原原本本打包到dist下面的。所以我们可以把src/common/config.js 放到static文件下,那麼只要build一次,在config.js上修改baseUrl就可以了。

 

1、在static 创建一个文件夹common。里面创建一个config.js文件

2、 在index.js中引入

   <script src="./static/common/config.js"></script>

3、在http.js中

axios.defaults.baseURL = window.default.baseURL;

4、打包后,可以在dist/static发现common/config.js文件。打开就可以修改里面的baseUrl然后更新到不同的服务器上

 

遇到問題

比如要在界面上要要顯示圖片

還沒有提取config.js 是這樣寫的

let _img = img?config.default.baseUrl+'/'+img:'';
 
提取之後
 let _img = img?window.default.baseUrl+'/'+img:'';
本地運行沒有問題,但是打包到服務器上就報錯了

 

中間這個undefined是什麼鬼東西。

原來是 window.default.baseUrl 是undefined

怎麼解決呢?

let _img = img?`${window.default.baseURL}`+'/'+img:'';

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM