位置: IT常识 - 正文

vue项目根据不同环境动态配置接口请求ip及全局变量(vue环境变量配置)(vue调用同一个组件)

编辑:rootadmin
vue项目根据不同环境动态配置接口请求ip及全局变量(vue环境变量配置)

推荐整理分享vue项目根据不同环境动态配置接口请求ip及全局变量(vue环境变量配置)(vue调用同一个组件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue项目根据不同环境切换登录不同系统,vue根据不同用户跳转到不同页面,vue多个项目,vue项目根据不同环境切换登录不同系统,vue根据不同条件import,vue根据不同用户跳转到不同页面,vue项目根据不同环境切换登录不同系统,vue根据不同用户跳转到不同页面,内容如对您有帮助,希望把文章链接给更多的朋友!

在项目的开发过程中,我们常常会遇到根据不同的环境需要切换不同的ip的问题,例如在项目部署到测试服时需要将接口请求ip替换成测试服的ip,部署到正式服时又需要将接口请求ip替换成正式服对应的ip,有些公司还有预发环境等,这样在每次部署不同环境的项目前都需要先手动切换ip,这样既繁琐又易出错。本篇文章就记录了本人在解决这一问题的详细步骤。

配置步骤1.在项目的根目录下新建 .env.xxx 文件

vue脚手架创建的项目默认目录结构如下:

根据环境个数在根目录下新增 .env.xxx 文件

 如上,三个 .env.xxx 文件后缀名(文件后缀名可自定义)为development、production、test,可分别对应为开发环境、生产环境和测试环境。如果还需要预发环境,则还可继续新增一个 .env.pre 文件代表预发环境。

每个环境都会加载的变量

如果还需要设置每个环境都需要加载的变量,则可以添加 .env 文件,如果没有,则可以不建此文件。(即每个环境对应变量的变量值都是一样的时候,则可以将变量定义在公用的.env文件中,而对应每个环境的 .env.xxx文件中则不需要再重复定义此变量)

2.在对应环境的 .env.xxx 文件中添加变量

在.env.xxx 文件中只有 NODE_ENV,BASE_URL 和以 VUE_APP_ 开头的变量会通过 webpack.DefinePlugin 静态地嵌入到客户端侧的代码中。

NODE_ENV : 主要用于标识当前的环境BASE_URL: vue.config.js 中的 publicPath 选项相符,即你的应用会部署到的基础路径VUE_APP_* : 自定义变量vue项目根据不同环境动态配置接口请求ip及全局变量(vue环境变量配置)(vue调用同一个组件)

.env.development(开发环境) 文件代码

.env.production(生产环境) 文件代码

.env.test(测试环境) 文件代码

.env(所有环境都会加载的变量) 文件代码

3.package.json 文件配置对应环境打包命令

vue脚手架创建的项目默认配置如下:

vue-cli-service serve:配置默认是使用的development对应环境的环境变量(当然也可以自己手动指定对应的环境,在现有命令后面加上 --mode development即可,完整命令:vue-cli-service serve --mode development), 也就是说执行npm run serve,会将.env.development文件和.env文件里面的变量加入项目代码中vue-cli-service build:配置默认是使用的production对应环境的环境变量, 也就是说执行npm run build,会将.env.production文件和.env文件里面的变量加入项目代码中

添加测试服打包命令(运行命令:npm run build:test)

在package.json文件中的 scripts 对象中添加如下代码:

 vue-cli-service build --mode test :命令中的test对应的是 .env.xxx文件中设置NODE_ENV变量的值,如果没有设置NODE_ENV变量,则默认以 .env.xxx 文件的后缀名为准,如果也找不到.env.test文件,则打包报错,

如果想在本地直接使用测试服的环境变量也可以在package.json 中再配置项目启动命令,配置如下(运行命令:npm run serve:test):

 或者直接修改现有serve 的运行模式: 

配置完成后如何在项目中使用在请求js文件中,可用于替换请求接口的ip,达到根据不同的环境请求不同的ip的效果在vue文件中,可当作全局变量使用,类似于在vue中定义的全局常量在vue.config.js文件中使用,可用于判断当前的打包环境,根据不同的环境进行一些打包优化配置vue-cli的index.html中使用,可用于加载公司统一定义的一些js、css等头部文件(需根据各个环境引入各自的js和css)1.请求接口的js文件/vue页面中使用 语法:process.env.变量名称

2.vue.config.js中根据环境变量判断打包环境,进行打包优化配置:

3.在vue-cli的index.html中使用

语法:<%= 变量名 %> html中根据不同环境,加载不同css/js文件

//css文件<link rel="stylesheet" href="<%= VUE_APP_API %>/header/head.css" rel="external nofollow" >//js文件<script type="text/javascript" src="<%= VUE_APP_API %>/footer.js"></script>

html中根据不同环境,加载不同本地js代码

<% if (process.env.NODE_ENV === 'production' ) { %> <script> window.test = 'xxxx' </script><% } %>

本文链接地址:https://www.jiuchutong.com/zhishi/295946.html 转载请保留说明!

上一篇:Bert 得到中文词向量(bert获取中文词向量)

下一篇:利用Matlab进行图像分割和边缘检测(利用matlab作图)

  • 核定征收的一般纳税人开专票怎么入账
  • 2023年印花税税率口诀
  • 缴纳上一年所得税附件是哪些科目
  • 出纳记账购进的货物
  • 房地产项目转让条件
  • 制作费开票属于什么科目
  • 发票的红冲和作废有何区别
  • 房地产开发票的时间
  • 补交以前年度车船税
  • 电信发票为什么分开开
  • 印花税退税流程怎么操作
  • 公司团建取得的进项发票可以抵扣增值税吗
  • 外购货物用于捐赠的会计分录
  • 购买的固定资产可以一次计入管理费用吗
  • 房地产企业销售老项目税率
  • 现金交易的发票可以认证
  • 意外险部分费用怎么算
  • 员工服装属于什么费用类型
  • 应收账款周转率高好还是低好
  • 一张记账凭证写不下时,附件怎么写
  • 没有发票的房租调增金额怎算
  • 股票质押期间收益归谁
  • 发票认证只认证进项吗
  • 企业怎么通过债务转让
  • 怎样破解wifi密码怎么办
  • Windows自带的截图
  • 主体有哪些
  • 广告公司文化事业费怎么交
  • 发放工资的时候,如何在excel里快速查询未发放成功的
  • mac菜单键怎么设置出来的
  • 电脑任务栏消失怎么把它显示出来
  • PHP:Memcached::getServerList()的用法_Memcached类
  • vue使用pdf.js
  • 无偿转让股权如何做账
  • pytorch model.module
  • framework在哪
  • 托收账款属于什么会计科目
  • 微信小程序制作
  • Linux | 将SpringBoot+Vue项目部署到服务器上
  • 长期待摊费用属于非流动资产吗
  • 公司出资认缴和实缴的区别
  • 应付票据帐务处理
  • 营改增一般纳税人简易征收的范围
  • 在SQL Server中使用存储过程的优点包括
  • 资产负债表中的货币资金包括哪些
  • 计提印花税会计
  • 鸡蛋的发票
  • 安全生产费实际发生
  • 计提合同印花税怎么做账
  • 买方的现金折扣会计分录
  • 合并报表存货抵消
  • 销售边角料税率是多少
  • 工程安装人工费怎么开票
  • 企业收到的财政性补贴要交企业所得税吗
  • 国税代开专票缴纳城建税分录?
  • 会计中借方和贷方各指什么
  • 工资计提多了冲账怎么办
  • 长期股权投资损益调整
  • 小型微利企业减按25%计算应纳税所得额
  • 发票验旧就是作废么?
  • 无发票临时工劳务费账务处理
  • 如何算增值税金额
  • centos安装软件教程
  • 笔记本xp系统怎么升级win7系统
  • centos5安装步骤
  • navapp.exe - navapp是什么进程文件 作用是什么
  • windows8消费预览版中图片密码使用教程
  • unity输入中文
  • jquery课程总结
  • 远程批量管理windows
  • js 拍照
  • JavaScript While 循环 教程
  • 一个android项目一般包含哪些目录?各有什么用途?
  • 增值税普通发票可以抵扣吗
  • 企业所得税年度申报表A类
  • 石家庄水费阶梯价格表 2020
  • 国税局内设机构
  • 国税地位比地税高吗
  • 1973年简并税制
  • 北京税务迁址流程是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设