vue项目env文件的使用(vue cli2和vue cli3)

Vue CLI 2 环境

在 Vue CLI 2 中,需要安装 dotenv 包来加载和使用环境变量。

步骤:

  1. 安装 dotenv:首先安装 dotenv 包

    npm install dotenv --save
    
  2. 创建 .env 文件:在项目的根目录下创建一个 .env 文件,并在其中定义你的环境变量。例如:

    DEFAULT_PASSWORD=Etop@123
    
  3. 加载 .env 文件:在你的项目入口文件(通常是 main.js 或 index.js)中,添加以下代码来加载 .env 文件:

    require('dotenv').config();
    
  4. 使用环境变量:现在你可以在代码中使用 process.env.YOUR_ENV_VAR 来访问你在 .env 文件中定义的环境变量。例如:

    createUser(row) {this.user = { password: process.env.DEFAULT_PASSWORD }; // 使用环境变量中的默认密码this.$nextTick(() => {this.dialogTableVisible = true;});
    }
    

Vue CLI 3 环境

在 Vue CLI 3 中,不需要安装 dotenv 包,可以直接使用以 VUE_APP_ 开头的环境变量,这些变量会自动被 webpack.DefinePlugin预处理。

步骤:

  1. 创建 .env 文件:在项目根目录下创建一个 .env 文件,并在其中定义你的环境变量。例如:

    VUE_APP_DEFAULT_PASSWORD=Etop@123
    
  2. 使用环境变量:在你的代码中直接使用 process.env.VUE_APP_XXX 来访问这些变量。例如:

    createUser(row) {this.user = { password: process.env.DEFAULT_PASSWORD }; // 使用环境变量中的默认密码this.$nextTick(() => {this.dialogTableVisible = true;});
    }
    

在 Vue CLI 3 环境下,默认情况下 只有以 VUE_APP_ 开头的环境变量 才会被注入到你的应用中。如果你希望使用非 VUE_APP_ 开头的环境变量,Vue CLI 3 本身并不直接支持。不过,你可以通过以下这种方式来解决这个问题:

修改 vue.config.js 文件
可以通过 vue.config.js 文件中的 chainWebpack 配置来修改 Webpack 的环境变量处理规则,从而让 Vue CLI 识别非 VUE_APP_ 开头的环境变量。

// vue.config.js
module.exports = {chainWebpack: config => {config.plugin('define').tap(args => {// 获取现有的环境变量const env = process.env;// 添加非 VUE_APP_ 前缀的环境变量到 DefinePlugin 中Object.keys(env).forEach(key => {if (!key.startsWith('VUE_APP_')) {args[0][`process.env.${key}`] = JSON.stringify(env[key]);}});return args;});}
};

这段代码会把所有不以 VUE_APP_ 开头的环境变量传递给 Webpack,从而在你的 Vue 项目中使用这些变量

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/63090.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全面解析 Transformer:改变深度学习格局的神经网络架构

目录 一、什么是 Transformer? 二、Transformer 的结构解析 1. 编码器(Encoder) 2. 解码器(Decoder) 3. Transformer 模型结构图 三、核心技术:注意力机制与多头注意力 1. 注意力机制 2. 多头注意力&…

使用YOLO系列txt目标检测标签的滑窗切割:批量处理图像和标签的实用工具

使用YOLO系列txt目标检测标签的滑窗切割:批量处理图像和标签的实用工具 使用YOLO的TXT目标检测标签的滑窗切割:批量处理图像和标签的实用工具背景1. 代码概述2. 滑窗切割算法原理滑窗切割步骤:示例: 3. **代码实现**1. **加载标签…

Java ArrayList 详解

Java ArrayList 详解 ArrayList 是 Java 集合框架(Collection Framework)中最常用的类之一,是一种基于动态数组的数据结构,属于 List 接口的实现类。它允许存储重复的元素,有序,支持随机访问,且…

springboot/ssm线上教育培训办公系统Java代码web项目在线课程作业源码

springboot/ssm线上教育培训办公系统Java代码web项目在线课程作业源码 基于springboot(可改ssm)htmlvue项目 开发语言:Java 框架:springboot/可改ssm vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库&…

Rust学习笔记_13——枚举

Rust学习笔记_10——守卫 Rust学习笔记_11——函数 Rust学习笔记_12——闭包 枚举 文章目录 枚举1. 定义1.1 无值变体1.2 有值变体1.3 枚举与泛型的结合 2. 使用2.1 和匹配模式一起使用2.2 枚举作为类型别名 3. 常用枚举类型 在Rust编程语言中,枚举(enum…

容器运行应用及Docker命令

文章目录 一、使用容器运行Nginx应用1_使用docker run命令运行Nginx应用1 观察下载容器镜像过程2 观察容器运行情况 2_访问容器中运行的Nginx服务1 确认容器IP地址2 容器网络说明3 使用curl命令访问 二、Docker命令1_Docker命令获取帮助方法2_Docker官网提供的命令说明3_docker…

深入浅出:php-学习入门全攻略

文章目录 1. 为什么选择 PHP?2. 安装 PHP 环境2.1 Windows 系统安装步骤 1:下载 PHP步骤 2:解压并配置步骤 3:配置环境变量步骤 4:验证安装 2.2 Mac 系统安装步骤 1:使用 Homebrew 安装步骤 2:验…

【热门主题】000075 探索嵌入式硬件设计的奥秘

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 【热…

数据分析(一): 掌握STDF 掌握金钥匙-码农切入半导体的捷径

中国的半导体行业必然崛起!看清这个大势,就会有很多机会。 今天,我们一起来了解一下半导体行业的一朵金花:STDF。 实际上这只是一种文件格式,但是当你熟练掌握解析这种文件的时候,你就已经打开在这个基础…

PostgreSQLt二进制安装-contos7

1、安装依赖 yum install -y gcc readline readline-devel zlib-devel net-tools perl wget numactl libicu-devel bison flex openssl-devel pam pam-devel libxml2 libxml2-devel libxslt libxslt-devel openldap openldap-devel 2、创建目录 mkdir -p /data/postgresql/{…

Latex转word(docx)或者说PDF转word 一个相对靠谱的方式

0. 前言 投文章过程中总会有各种各样的要求,其中提供word格式的手稿往往是令我头疼的一件事。尤其在多公式的文章中,其中公式转换是一个头疼的地方,还有很多图表,格式等等,想想就让人头疼欲裂。实践中摸索出一条相对靠…

AWS创建ec2实例并连接成功

aws创建ec2实例并连接 aws创建ec2并连接 1.ec2创建前准备 首先创建一个VPC隔离云资源并且有公有子网 2.创建EC2实例 1.启动新实例或者创建实例 2.创建实例名 3.选择AMI使用linux(HVM) 4.选择实例类型 5.创建密钥对下载到本地并填入密钥对名称 6.选择自己创建的VPC和公有子网…

“放弃Redis Desktop Manager使用Redis Insight”:日常使用教程(Redis可视化工具)

文章目录 更新Redis Insight连接页面基础解释自动更新key汉化暂时没有找到方法, Redis Desktop Manager在连接上右键在数据库上右键在key上右键1、添加连接2、key过期时间 参考文章 更新 (TωT)ノ~~~ βyё βyё~ 现在在维护另一…

如何用注册机破解Reflexive游戏

相信有许多小朋友(像我以前一样)已经迫不及待地准备准备对浩瀚的、像三星堆一般的Reflexive游戏合集进行考古挖掘工作了。不巧的是,打开游戏之后发现常常提示要付费才能解锁完整版。 一、下载注册机与破解文件 首先,在我的永硕网…

Java 多线程探秘:从线程池到死锁的奇幻之旅

1.简述一下你对线程池的理解 线程池是一种多线程处理形式,处理过程中将任务分为若干个线程,使用线程池可以有效地管理并发线程的数量,提高程序的响应速度和资源利用率。以下是关于线程池的一些关键点: 预创建线程:线…

一万台服务器用saltstack还是ansible?

一万台服务器用saltstack还是ansible? 选择使用 SaltStack 还是 Ansible 来管理一万台服务器,取决于几个关键因素,如性能、扩展性、易用性、配置管理需求和团队的熟悉度。以下是两者的对比分析,帮助你做出决策: SaltStack&…

PDF文件页面转换成图片怎么弄-免费PDF编辑工具分享

>>更多PDF文件处理应用技巧请前往 96缔盟PDF处理器 主页 查阅! —————————————————————————————————————— 序言 我之前的文章也有介绍过如何使用96缔盟PDF处理器对PDF文件转换成图片,但是当时是使用DMPDFU…

从 scratch开始构建一个最小化的 Hello World Docker 镜像-docker的镜像源头

在这篇文章中,我们将学习如何从零开始构建一个最小化的 Docker 镜像,基于 scratch 镜像,并在其中运行一个简单的 “Hello World” 程序。 Scratch 是一个空白的基础镜像,适用于构建轻量化、独立的容器。由于 scratch 不包含任何系…

OpenHarmony-4.GPIO驱动

GPIO 1.功能简介 GPIO(General-purpose input/output)即通用型输入输出。GPIO又俗称为I/O口,I指的是输入(in),O指的是输出(out)。可以通过软件来控制其输入和输出,即I/O控制。通常&…

网络安全xss和csrf

xss和csrf介绍 1.xss 跨站脚本攻击,csrf 跨站请求伪造 2.xss 浏览器向服务器请求时注入脚本攻击 分为三种类型:反射性(非持久型)、存储型(持久型)、基于dom 防范手段:输入过滤、输出过滤、加ht…