vue动态获取接口域名

域名一般是打包到项目里面的,打包后不能动态配置,只能通过不同的指令来动态切换域名。

后台说增加一个配置文件,动态更改域名。查了查网上,现记录下步骤。
1、安装插件

npm install --save-dev generate-asset-webpack-plugin

2、新建配置文件(我是将配置文件放置在public文件夹内)
在项目的public目录下新建 serverconfig.json 以后会根据这个文件去生成打包的配置文件

{"produrl":"http:www.baidu.com"}

3、第三步 引入generate-asset-webpack-plugin

在build/webpack.prod.conf.js中添加

const generateassetplugin = require('generate-asset-webpack-plugin');
const serverconfig = require('../public/serverconfig.json');//引入根目录下的配置文件

const createjson = function() {
 return JSON.stringify(serverconfig);
};

//plugins 中使用
 plugins: [
  //打包时生成一个配置文件
  new generateassetplugin({
   filename: 'serverconfig.json',
   fn: (compilation, cb) => {
     cb(null, createjson());
   },
 }),
]

4、第四步 使用配置文件中的内容
这里根据不同项目不同需求代码自行变换,我分享一下我的项目里的使用。在main.js 中vue实例初始化之前将baseurl存到本地

axios.get('./serverconfig.json').then( e => {
 let baseurl = e.data.produrl
 window.localStorage.setItem("baseurl", baseurl);
 new vue({
  el: '#app',
  router,
  render: h => h(app)
 })
})

打包后的目录

上传到服务器就好了。接下来就可以不用再重新build了 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

罗倩楠_666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值