vue环境变量配置之process.env解读

 更新时间:2023年03月27日 09:07:33   作者:yehaocheng520  
这篇文章主要介绍了vue环境变量配置之process.env解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

vue环境变量配置process.env

在用vue框架时,经常用到两种环境,一种是开发环境,就是本地开发时的环境,一种是生产环境,就是要发布到线上的环境。

平时开发是用生产环境的,如果发布到线上时,需要切换环境为线上。如果人为去切换也是可以的,但是会容易忘记,可以通过配置不同的运行命令来自动切换环境。

下面开始:

配置环境的实现原理

实现原理就是采用node.js顶层对象中的process.env(进程环境,返回一个包含用户环境信息的对象)属性,根据各个环境的配置文件区分和切换环境

具体实例

1. 安装依赖

npm install process

2.创建.env.dev 和.env.prod两个文件

注意文件要创建在根目录下面

.env.dev文件内容如下:

NODE_ENV = 'development'
VUE_APP_TITLE = 'development'
/* 请求接口地址 */
VUE_APP_INTERFACE_URL="https://xxx"
/* proxy代理地址 */
VUE_APP_PROXYURL='http://xxx'

.env.prod文件内容如下:

NODE_ENV='production'
VUE_APP_TITLE='prod'
/* 请求接口地址 */
VUE_APP_INTERFACE="https://xxx"

3.设置项目启动时默认的环境

只需要在项目启动命令后面修改需要的环境就行了,例如npm run dev,把--mode dev改为--mode prod就变成了开发环境

package.json部分内容如下:

"scripts":{
    "dev":"vue-cli-service serve --mode dev",
    "prod":"vue-cli-service serve --mode prod"
}

4.查看环境是否配置成功

在main.js文件中打印当前环境,输出就成功了

console.log(process.env.NODE_ENV)

vue3 process.env.XXX环境变量不生效

问题

使用process.env.XXX时获取不到环境变量的值:

axios.defaults.baseURL = process.env.VUE_APP_BASE_API;

解决

项目根目录下的.env.development和.env.production环境配置文件中,NODE_ENV=development的值必须和package.json文件启动配置--mode一致

//.env.development
NODE_ENV=development
VUE_APP_BASE_API=/api
VUE_APP_BASE_URL=http://localhost:8081/
VUE_APP_PROXYURL=http://localhost:8080/
"scripts": {
        "serve": "vue-cli-service serve",
        "dev": "vue-cli-service serve --mode development",
        "prod": "vue-cli-service serve --mode production",
    },

.env.development和.env.production环境配置文件中变量名必须以VUE_APP_开头

总结

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

相关文章

  • Element树形控件el-tree实现一键全选、反选功能

    Element树形控件el-tree实现一键全选、反选功能

    最近做的项目用到了全选全不选功能,于是就自己动手写了一个,这篇文章主要给大家介绍了关于Element树形控件el-tree实现一键全选、反选功能的相关资料,需要的朋友可以参考下
    2023-10-10
  • 超简单易懂的vue组件传值

    超简单易懂的vue组件传值

    这篇文章主要为大家详细介绍了vue组件传值,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • 浅谈super-vuex使用体验

    浅谈super-vuex使用体验

    super-vuex是一套用于简化Vuex的数据架构。这篇文章主要介绍了浅谈super-vuex使用体验,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • 浅谈Vue 性能优化之深挖数组

    浅谈Vue 性能优化之深挖数组

    这篇文章主要介绍了浅谈Vue 性能优化之深挖数组,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • easycom模式开发UNI-APP组件调用必须掌握的实用技巧

    easycom模式开发UNI-APP组件调用必须掌握的实用技巧

    uni-app基于VUE开发,通常组件的使用都是先安装,然后全局或者局部引入,注册,今天通过本文给大家分享easycom模式开发UNI-APP组件调用必须掌握的实用技巧,需要的朋友一起看看吧
    2021-08-08
  • vue-router嵌套路由方式(页面路径跳转但页面显示空白)

    vue-router嵌套路由方式(页面路径跳转但页面显示空白)

    这篇文章主要介绍了vue-router嵌套路由方式(页面路径跳转但页面显示空白),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • Vue+Element实现网页版个人简历系统(推荐)

    Vue+Element实现网页版个人简历系统(推荐)

    这篇文章主要介绍了Vue+Element实现网页版个人简历系统,需要的朋友可以参考下
    2019-12-12
  • Vue2使用cube-ui 实现搜索过滤、高亮功能

    Vue2使用cube-ui 实现搜索过滤、高亮功能

    cube-ui 是基于 Vue.js 实现的精致移动端组件库,由于很长一段时间没有学习cube-ui 的功能实现示例代码了,今天通过本文给大家介绍下Vue2使用cube-ui 实现搜索过滤、高亮功能,感兴趣的朋友跟随小编一起看看吧
    2023-01-01
  • mpvue小程序循环动画开启暂停的实现方法

    mpvue小程序循环动画开启暂停的实现方法

    这篇文章主要介绍了mpvue小程序循环动画开启暂停的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • 利用nginx部署vue项目的全过程

    利用nginx部署vue项目的全过程

    今天要用到服务器nginx,还需要把自己的vue的项目部署到服务器上去所以就写一下记录下来,下面这篇文章主要给大家介绍了关于利用nginx部署vue项目的相关资料,需要的朋友可以参考下
    2022-03-03

最新评论