Vite env 环境配置

简介: Vite env 环境配置

获取环境变量配置

通过import.meta.env 获取环境变量详细配置

  • import.meta.env.MODE: {string} 应用运行的模式
  • import.meta.env.BASE_URL: {string} 部署应用时的基本 URL。他由base配置项决定。
  • import.meta.env.PROD: {boolean} 应用是否运行在生产环境。
  • import.meta.env.DEV: {boolean} 应用是否运行在开发环境 (永远与 import.meta.env.PROD相反)。
  • import.meta.env.SSR: {boolean} 应用是否运行在 server 上。

.env 文件

在项目根文件下创建 .env 文件,

.env                # 所有情况下都会加载
.env.local          # 所有情况下都会加载,但会被 git 忽略
.env.[mode]         # 只在指定模式下加载
.env.[mode].local   # 只在指定模式下加载,但会被 git 忽略

配置环境变量

通过 以VITE_ 前缀 来设置环境变量属性,这样可以防止意外将一些环境变量泄露到客户端。

VITE_KEY=1234234
VITE_API=192.168.98.189

获取环境变量

通过import.meta.env 获取环境变量详细配置,可以在 vite.config.ts 或者 项目 任何地方访问使用。

console.log(import.meta.env)
console.log(import.meta.env.MODE)   'test'

输出的内容

如果想要在环境变量中使用 $ 符号,则必须使用 \ 对其进行转义

VITE_KEY=1234234
VITE_API=192.168.98.189
VITE_http=\$http

TypeScript  env 提示

我们可以通过在 src 下 新建一个 env.d.ts 文件,在 interface  importMetaEnv 中增加环境变量即可,这样就可以有 提示了。

/// <reference types="vite/client" />
interface ImportMetaEnv {
  readonly VITE_APP_TITLE: string
  readonly VITE_TEST_KEY: string
  // 更多环境变量...
}

如果你的代码依赖于浏览器环境的类型,比如 DOMWebWorker,你可以在 tsconfig.json 中修改 lib 字段来获取类型支持。

{
  "lib": ["WebWorker"]
}

 

HTML 环境变量替换

Vite 还支持在 HTML 文件中替换环境变量。import.meta.env 中的任何属性都可以通过特殊的 %ENV_NAME% 语法在 HTML 文件中使用:

<p>Using data from  %VITE_API_URL% </p>

如果环境变量在 import.meta.env 中不存在,比如不存在的 %NON_EXISTENT%,则会将被忽略而不被替换,这与 JS 中的 import.meta.env.NON_EXISTENT 不同,JS 中会被替换为 undefined

模式 Mode

默认情况下,开发服务器(dev) 运行在development 开发模式,build 命令运行在production 生产模式.

这意味着当执行 vite build 时,它会自动加载 .env.production 中可能存在的环境变量

# .env.production
VITE_APP_TITLE=My App

指定模式

当启动项目或者构建项目时,我们可以通过指令 指定 当前系统环境,--mode name

yarn dev --mode test
yarn build --mode test

需要在根目录下新建一个 为 test 的环境变量文件, .env.test

参考文献:

https://cn.vitejs.dev/guide/env-and-mode.html

相关文章
|
7月前
|
JavaScript
Vue中 .env .env.development .env.production 详细说明
Vue中 .env .env.development .env.production 详细说明
295 0
UMI多环境配置
一般来说项目不止有dev和prod两个环境,umi可以通过环境变量 UMI_ENV 区分不同环境来指定配置。
1408 0
|
3月前
|
JavaScript 测试技术 Windows
vue配置webpack生产环境.env.production、测试环境.env.development(配置不同环境的打包访问地址)
本文介绍了如何使用vue-cli和webpack为Vue项目配置不同的生产和测试环境,包括修改`package.json`脚本、使用`cross-env`处理环境变量、创建不同环境的`.env`文件,并在`webpack.prod.conf.js`中使用`DefinePlugin`来应用这些环境变量。
162 2
vue配置webpack生产环境.env.production、测试环境.env.development(配置不同环境的打包访问地址)
|
2月前
|
API
Vite 中环境变量的配置方法
【10月更文挑战第10天】 Vite 中环境变量的配置方法
412 2
|
3月前
vite.config.js中vite.defineConfig is not defined以及创建最新版本的vite项目
本文讨论了在配置Vite项目时遇到的`vite.defineConfig is not defined`错误,这通常是由于缺少必要的导入语句导致的。文章还涉及了如何创建最新版本的Vite项目以及如何处理`configEnv is not defined`的问题。
192 3
vite.config.js中vite.defineConfig is not defined以及创建最新版本的vite项目
|
3月前
|
JavaScript 测试技术
vue配置生产环境.env.production、测试环境.env.development
该文章介绍了如何在Vue项目中配置和使用不同的环境变量文件(.env、.env.production、.env.development)以适应开发、测试和生产环境,并通过修改`package.json`中的scripts来实现不同环境的打包。
690 0
vue配置生产环境.env.production、测试环境.env.development
|
4月前
|
安全 JavaScript Shell
vite中环境变量的使用与配置,非常实用详细!
【8月更文挑战第2天】vite中如何使用环境变量?根据当前的代码环境产生值的变化的变量就叫做环境变量。本文将详细介绍vite中如何使用环境变量
791 1
|
7月前
|
JavaScript 开发工具 git
Vue 入门系列:.env 环境变量
Vue 入门系列:.env 环境变量
92 1
|
前端开发 开发者
深入剖析Vite配置文件
深入剖析Vite配置文件
438 0

热门文章

最新文章