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

文章介绍了如何在Vite项目中使用环境变量来区分开发和生产环境,包括创建.env文件设定变量,通过import.meta.env访问变量,以及在vite.config.js中使用环境变量的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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官方中文文档

### Vue3 Vite 配置 `process.env` 环境变量 在基于 ViteVue3 项目中,配置和访问环境变量的方式有所不同。Vite 不再直接支持 `process.env` 来读取环境变量;而是通过 `import.meta.env` 访问环境变量[^1]。 #### 创建环境配置文件 为了区分不同运行环境中的配置,在项目的根目录下可以创建多个 `.env` 文件: - **`.env.development`**: 定义开发环境下的变量。 - **`.env.production`**: 定义生产环境下的变量。 - **`.env.test`**: 定义测试环境下的变量。 每个文件的内容遵循特定格式,即以 `VITE_` 前缀开头的键值对形式定义变量。例如,在 `.env.development` 中添加如下内容: ```bash VITE_APP_API_URL=http://localhost:8080/api/v1/ ``` 这表示当应用处于开发模式时,API 请求的基础 URL 将指向本地服务器地址。 #### 修改 vite.config.js 确保 `vite.config.js` 正确设置了环境变量的支持。通常情况下,默认配置已经足够满足需求,但如果需要自定义行为,则可以根据官方文档调整配置项。 #### 在代码中使用环境变量 一旦完成了上述配置工作之后,就可以在整个应用程序内轻松地利用这些预设好的环境变量了。下面展示了一个简单的例子说明如何在一个 Vue 组件里获取并显示 API 地址: ```javascript <template> <div>{{ apiUrl }}</div> </template> <script setup lang="ts"> const apiUrl = import.meta.env.VITE_APP_API_URL; console.log(&#39;Current API URL:&#39;, apiUrl); </script> ``` 这段代码会根据当前的工作环境自动选择合适的 API 接口路径,并将其打印到控制台以及渲染至页面上。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

剑九_六千里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值