vue如何根据不同的环境使用不同的接口地址

 更新时间:2023年04月18日 15:16:44   作者:夏天想  
这篇文章主要介绍了vue如何根据不同的环境使用不同的接口地址问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

vue根据不同的环境使用不同的接口地址

package.json文件,添加。

    "dev:test": "vue-cli-service serve --mode test",
    "build:test": "vue-cli-service build --mode test",
    "build:prod": "vue-cli-service build --mode prod",

代表npm命令行新增了几条命令,这里的test和prod是自己命名的你也可以写别的。

只要下面获取的时候根据这些名字匹配使用本地测试还是线上环境就行。

  • mpm run dev:test 运行本地环境
  • mpm run build:test 用测试接口打包
  • mpm run build:prod 用线上接口打包

然后我们可以根据process.env.NODE_ENV这个变量获取到输入的命令行的:后面的内容

我们新建一个config.js的文件存储接口地址和appid等全局需要使用的一些变量。

let HOST = process.env.NODE_ENV|| 'prod';
let baseURL = "";
let appid = "";
if(HOST === 'prod'){  //正式服
  baseURL = "https://api.heebu.cn";
  appid = 'wx90ad292c1eb1105c';
}else if(HOST === 'test'){ // 测试
  baseURL = "https://testapi.heebu.cn";
  appid = 'wx9b070f1675720f2b';
}else{ // 本地
  baseURL = HOST;
  appid = 'wx9b070f1675720f2b';
}

export {
  baseURL,

  appid

}

其他页面可以引用这个config.js

import { baseURL,appid} from 'config.js'

然后就可以使用这个baseURL啦。

vue不同环境,请求不同环境的接口

开发过程中,根据项目要求,后台部署了三个环境的接口,分别是:开发环境(开发时请求)、测试环境(部署测试环境请求)、生产环境(部署到线上环境请求),我们分别把他们称之为:开发环境(development)、测试环境(test)、生产环境(production)。

.env文件

注意:请仔细阅读下方文字!!!

.env # 在所有的环境中被载入
.env.local # 在所有的环境中被载入,但会被 git 忽略
.env.[mode] # 只在指定的模式中被载入
.env.[mode].local # 只在指定的模式中被载入,但会被 git 忽略

创建.env文件

在项目根目录创建以下文件

这三个文件分别代表:开发、测试、生产,运行的.env文件

.env.development内容:

VUE_APP_BASE_URL = 'http://development'

.env.test内容:

VUE_APP_BASE_URL = 'http://test'

.env.production内容:

VUE_APP_BASE_URL = 'http://production'

修改启动命令,加载不同的.env文件 

打开package.json文件

在scripts下进行修改

绿框位置代表:当前命令加载的.env文件

//例:
 npm run serve //执行此命令 则运行 .env.development文件
 npm run test//执行此命令 则运行 .env.test文件
 npm run production//执行此命令 则运行 .env.production文件

获取环境变量

可以js文件中通过

console.log(process.env.VUE_APP_BASE_URL)
//开发环境打印
http://development
//测试环境打印
http://test
//生产环境打印
http://production

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue使用xe-utils函数库的具体方法

    vue使用xe-utils函数库的具体方法

    这篇文章主要介绍了vue使用xe-utils函数库的具体方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • Nuxt.js结合Serverless构建无服务器应用

    Nuxt.js结合Serverless构建无服务器应用

    Nuxt.js是一个基于Vue.js的框架,结合Serverless架构,Nuxt.js可以让你构建高度可扩展、成本效益高的无服务器应用,具有一定的参考价值,感兴趣的可以了解一下
    2024-08-08
  • vue如何动态实时的显示时间浅析

    vue如何动态实时的显示时间浅析

    这篇文章主要给大家介绍了关于vue如何动态实时的显示时间,以及vue时间戳 获取本地时间实时更新的相关资料,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • vue在body和query中如何向后端传参

    vue在body和query中如何向后端传参

    这篇文章主要介绍了vue在body和query中如何向后端传参,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • vue无法加载文件C:\xx\AppData\Roaming\npm\vue.ps1系统禁止运行脚本

    vue无法加载文件C:\xx\AppData\Roaming\npm\vue.ps1系统禁止运行脚本

    这篇文章主要介绍了vue : 无法加载文件 C:\xx\AppData\Roaming\npm\vue.ps1...系统上禁止运行脚本问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • Vue组件之Tooltip的示例代码

    Vue组件之Tooltip的示例代码

    这篇文章主要介绍了Vue组件之Tooltip的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • vue 解决IOS10低版本白屏的问题

    vue 解决IOS10低版本白屏的问题

    这篇文章主要介绍了vue 解决IOS10低版本白屏的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Vue Vine实现一个文件中写多个组件的方法(最近很火)

    Vue Vine实现一个文件中写多个组件的方法(最近很火)

    Vue Vine提供了全新Vue组件书写方式,主要的卖点是可以在一个文件里面写多个vue组件,Vue Vine是一个vite插件,vite解析每个模块时都会触发插件的transform钩子函数,本文介绍Vue Vine是如何实现一个文件中写多个组件,感兴趣的朋友一起看看吧
    2024-07-07
  • Vue监听页面刷新和关闭功能

    Vue监听页面刷新和关闭功能

    我在做项目的时候,有一个需求,在离开(跳转或者关闭)购物车页面或者刷新购物车页面的时候向服务器提交一次购物车商品数量的变化。这篇文章主要介绍了vue监听页面刷新和关闭功能,需要的朋友可以参考下
    2019-06-06
  • Vue3中如何使用SCSS编写样式

    Vue3中如何使用SCSS编写样式

    在Vue模板中启用这些表现力库插件的最简单方法是在初始化项目时安装它们,或使用 npm install(或 yarn add)安装包,这篇文章主要介绍了Vue3中如何使用SCSS编写样式,需要的朋友可以参考下
    2023-12-12

最新评论