vue和axios, 能在外部修改公共地址

怎么把axios里面baseURL 打包的项目的外面能在外部更改
之前一直因为axios里面的baseURL 是只能在开发环境下去修改的, 后来提出这个需求,借助万能的百度, 实现了在外部修改的这个事情; 直接上代码:
在这里插入图片描述
在public 的里面去 添加一个serverConfig.json 的文件 输入你的basueURL 地址
第二步 : 在mai.js里面:

function getServerConfig() {
  return new Promise((resolve, reject) => {
    axios.get('./serverConfig.json').then((result) => {
      console.log(result) // 看打印出来的结果
      let config = result.data;
      for (let key in config) {
        Vue.prototype[key] = config[key];
      }
    
      console.log(config,"配置");//这里 打印出来的是baseURL
      
      // console.log(Vue.prototype.baseURL,"77777") // 验证是否已经把属性挂在了Vue上
      resolve();
    }).catch((error) => {
      console.log(error);
      reject()
    })
  })
}
async function init() {
  await getServerConfig();
 
  new Vue({
    router,
    store,
    render: h => h(App)
  }).$mount("#app");
}

init();

第三步 因为我这里是把所有的axios 给处理到单独的一个api 文件夹里面

在这里插入图片描述
功能我在实现的时候 一开始是让这个vue实例上的baseURL =axios 的baseURL 但是发送过程中,出现问题. 所以统一改成了vue.prototype.baseurl 去实现的.

按照正常逻辑来, axios.default.baseURL = vue.prototype.baseURL 是能实现的.

在这里 特别感谢https://www.jianshu.com/p/ed6ea9a4aeda 这位大佬的博客,写的非常的好/. 解决了我的问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值