vue 3 第三十六章:vite环境变量(.env文件的配置及使用)

news2024/11/17 16:14:23

文章目录

  • 1. 环境变量使用场景
  • 2. 创建`.env`文件
  • 3. 在应用程序中使用环境变量
    • 3.1. 输出结果(开发环境):
    • 3.2. 输出结果(生产环境):
  • 4. 在 vite 中使用环境变量

1. 环境变量使用场景

  • 区分不同的环境。在Vite中,我们可以使用环境变量来管理不同环境下的配置。Vite支持使用.env文件来配置环境变量,不同的环境可以使用不同的.env文件来管理配置。
  • 当做全局变量使用。用来判断是开发或者测试环境,展示不用的页面、按钮等等。

2. 创建.env文件

首先,我们需要在项目的根目录下创建.env文件。.env文件中可以定义各种环境变量,例如API的地址、端口号等等。以下是一个简单的.env文件示例:

VITE_APP_DEV = 'dev-api'
VITE_APP_URL = 'http://192.168.0.0.1/api' 

注意:在vite中环境变量必须以VITE开头

在这里插入图片描述

3. 在应用程序中使用环境变量

要在Vite的应用程序中使用环境变量,我们可以使用import.meta.env对象来访问它们。例如,在组件中可以使用以下方式访问VITE_APP_TITLE环境变量:

// 在组件中可以通过这种方式来访问
<script setup lang="ts">
console.log(import.meta.env);
</script>

3.1. 输出结果(开发环境):

在这里插入图片描述

3.2. 输出结果(生产环境):

  1. 运行 npm run build 打包项目,生成 dist 文件
  2. 运行 npm install http-server -g 安装 http-server。(由于dist文件本地直接打开会跨域(file文件协议不允许跨域),因此需要启动一个后台服务)
  3. 运行 http-server -p <端口号> -o,启动后台服务
  4. 打开页面后,此时查看浏览器控制台就可以看到如下的输出信息

此处启动后台服务方式很多。可以使用http-server,也可以使用nginx等其他方式

在这里插入图片描述

在这个示例中,我们使用import.meta.env来访问环境变量,并将其输出到控制台中。

4. 在 vite 中使用环境变量

另外,我们还可以在Vite的配置文件中使用环境变量。例如,可以在vite.config.js文件中使用以下方式访问环境变量:

在 vite.config.js文件测试 vite 获取到的环境:

  1. 运行 npm run dev 可以看到打印出的是 development

在这里插入图片描述

  1. 运行 npm run build 可以看到打印出的是 production

在这里插入图片描述

vite 中不支持 import.mete.env,环境变量通常从 process 获得。使用 Vite 导出的 loadEnv 函数来加载指定的 .env 文件

在这里插入图片描述

更多请查看vite官方中文文档

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

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

相关文章

【LeetCode】160. 相交链表

160. 相交链表&#xff08;简单&#xff09; 题解 对于这道题&#xff0c;首先要理解题意&#xff1a;如果两个单链表会相交&#xff0c;那么返回相交的起始节点&#xff1b;否则返回 null。 无需看“自定义评测”部分。 假设链表 A 的头节点到相交点的距离为 a&#xff0c;链…

S32K324芯片学习笔记-Clock

文章目录 Clock详解特征时钟生成MC_CGM mux 0时钟时钟输出概述其他时钟整体框图时钟源芯片时钟源芯片输入时钟芯片输出时钟FIRC快速内部RC振荡器待机模式下的FIRC_CLK行为 SIRC慢速内部RC振荡器待机模式下的SIRC行为 FXOSC快速外部晶振慢速外部晶振PLL锁相环配置PLL配置序列 芯…

QPushButton 基本使用

〇、PyQt 中的 Button 相关类介绍 PyQt 提供了多种按钮类&#xff0c;用于创建各种类型的按钮。这一部分将打算介绍一下 PyQt 各种 Button 及相关类&#xff0c;并扩展 Button 的功能用法&#xff0c;让你能够打造自己的个性化 Button 。在下面&#xff0c;我先来介绍 PyQt 中…

数据库系统理论 -- 关系查询处理和查询优化

本篇文章会先介绍数据库的查询处理&#xff0c;然后介绍数据库的查询优化。其中查询优化分为代数优化和物理优化。代数优化是指关系表达式的优化&#xff0c;物理优化是指通过存取路径和底层操作算法的选择进行优化。 查询处理 查询分析查询检查查询优化查询执行 查询分析 …

JNI开发Tips

异常的检测和打印&#xff1a; c中Native代码调用JNI的时候如果产生了异常不会展开原生堆栈&#xff1a; 所以在cJNI调用的时候构造一个FindClass时找不到类的异常&#xff0c;我们看到的实际的崩溃堆栈会是下面的样子&#xff0c;看不到c层代码的调用链路&#xff1a; 在JNI…

【Reids】搭建主从集群以及主从数据同步原理

目录 一、搭建主从集群 1、介绍 2、搭建 二、数据同步原理 1、全量同步 2、主节点如何判断是不是第一次连接 3、增量同步 4、优化主从数据同步 一、搭建主从集群 1、介绍 单节点的Redis并发能力存在上限&#xff0c;要提高并发能力就需要搭建主从集群&#xff0c;实现…

WinDbg安装入坑2(C#)

由于作者水平有限&#xff0c;如有写得不对的地方&#xff0c;请指正。 使用WinDbg的过程中&#xff0c;坑特别的多&#xff0c;对版本要求比较严格&#xff0c;如&#xff1a; 1 32位应用程序导出的Dump文件要用32位的WinDbg打开&#xff0c;想要没有那么多的问题&#xf…

数据库存储过程和函数

MySQL存储过程和存储函数 MySQL中提供存储过程&#xff08;procedure&#xff09;与存储函数&#xff08;function&#xff09;机制&#xff0c;我们先将其统称为存储程序&#xff0c;一般的SQL语句需要先编译然后执行&#xff0c;存储程序是一组为了完成特定功能的SQL语句集&…

惊人!截至6月10日全球COVID-19疫情玫瑰图,这些国家最危险

一、引言 自从COVID-19疫情在2020年爆发以来&#xff0c;数据可视化成为了了解疫情趋势和规模的重要手段。饱受争议的疫情数据可视化中的南丁格尔玫瑰图&#xff08;Rose Chart&#xff09;&#xff0c;由于具有简洁、直观、易于理解等特点&#xff0c;逐渐成为了一个备受欢迎的…

MySQL中索引失效的场景

1.对索引使用左或者左右模糊匹配 当我们使用左或者左右模糊匹配的时候&#xff0c;也就是 like %xx 或者 like %xx% 这两种方式都会造成索引失效。 比如下面的 like 语句&#xff0c;查询 name 后缀为「林」的用户&#xff0c;执行计划中的 typeALL 就代表了全表扫描&#xf…

什么是SOME/IP-SD?

SOME/IP-SD 是"Scalable service-Oriented MiddlewarE over IP - Service Discovery"的缩写&#xff0c;是SOME/IP的一种特殊报文&#xff0c;可以让Client知道Server可以提供哪些服务&#xff0c;SOME/IP有两种动态发现服务的机制&#xff1a;一种是Offer Service&a…

Javascript作用域 (局部作用域和全局作用域) 详细介绍

Javascript作用域 (局部作用域和全局作用域) 详细介绍 作用域是当前的执行上下文&#xff0c;值和表达式在其中“可见”或可被访问。 常见的作用域为&#xff1a; 全局作用域&#xff1a;脚本模式运行所有代码的默认作用域 函数作用域&#xff1a;由函数创建的作用域 局部作用域…

IP-Guard上传软件到软件中心服务器时,软件ID、显示名称等信息如何获取?

如何实现客户端只能从软件中心下载安装软件? 控制台设置禁止全部软件安装的软件管理策略即可。即使设置禁止,软件中心安装不会受影响的。 在控制台-策略-软件安装管理策略,勾选禁止全部软件的安装。 软件中心客户端下载安装软件后,下载安装包是否会自动删除? 1、http方式…

SpringBoot Actuator详解(四十八)

还是要开心的&#xff0c;万一梦想真得实现了呢 上一章简单介绍了SpringBoot日志配置(四十七) , 如果没有看过,请观看上一章 本章节详细参考了: https://www.cnblogs.com/caoweixiong/p/15325382.html Spring Boot Actuator 模块提供了生产级别的功能&#xff0c;比如健康检查…

.locked加密勒索数据库级别恢复---惜分飞

有客户数据库被加密成.locked结尾的扩展名,数据库无法正常使用 对应的READ_ME1.html文件中信息类似:send 0.1btc to my address:bc1ql8an5slxutu3yjyu9rvhsfcpv29tsfhv3j9lr4. contact email:servicehellowinter.online,if you can’t contact my email, please contact some d…

Leetcode-6425. 找到最长的半重复子字符串

题目描述 给你一个下标从 0 开始的字符串 s &#xff0c;这个字符串只包含 0 到 9 的数字字符。 如果一个字符串 t 中至多有一对相邻字符是相等的&#xff0c;那么称这个字符串是 半重复的 。 请你返回 s 中最长 半重复 子字符串的长度。 一个 子字符串 是一个字符串中一段…

Redis第十章 Redis HyperLogLog与事务、Redis 7.0前瞻

HyperLogLog HyperLogLog(Hyper[ˈhaɪpə])并不是一种新的数据结构(实际类型为字符串类型)&#xff0c;而是一种基数算法,通过 HyperLogLog 可以利用极小的内存空间完成独立总数的统计&#xff0c;数据集可以是 IP、Email、ID 等。 如果你的页面访问量非常大&#xff0c;比如…

JUC基础认识(2)

线程池(重点)&#xff1a;3大方法&#xff0c;7大参数&#xff0c;4种拒绝策略 程序运行的本质:占用系统资源&#xff01;优化资源的使用&#xff01;----->池化技术 池化技术的好处: 1.降低资源的消耗 2.提高响应速度 3.方便管理 线程复用&#xff0c;可以控制最大…

Java ~ Reference ~ FinalizerHistogram【总结】

前言 文章 相关系列&#xff1a;《Java ~ Reference【目录】》&#xff08;持续更新&#xff09;相关系列&#xff1a;《Java ~ Reference ~ FinalizerHistogram【源码】》&#xff08;学习过程/多有漏误/仅作参考/不再更新&#xff09;相关系列&#xff1a;《Java ~ Referenc…

通俗讲解元学习(Meta-Learning)

元学习通俗的来说&#xff0c;就是去学习如何学习&#xff08;Learning to learn&#xff09;,掌握学习的方法&#xff0c;有时候掌握学习的方法比刻苦学习更重要&#xff01; 下面我们进行详细讲解 1. 从传统机器学习到元学习 传统的机器学中&#xff0c;我们选择一个算法&…