Vite 环境配置指南

环境变量的基础概念

在 Vite 项目中,环境变量是一种在不同环境(开发、生产、测试等)之间切换配置的有效方式。Vite 提供了一套完整的环境变量解决方案。

环境变量命名规则

  • VITE_ 开头的变量会被暴露给客户端代码
  • 其他变量仅在构建过程中可用
VITE_API_URL=http://api.example.com // ✅ 客户端可访问
SECRET_KEY=123456 // ❌ 客户端不可访问

import.meta 详解

什么是 import.meta

import.meta 是 ECMAScript 模块系统提供的特殊对象,用于访问模块的元信息。在 Vite 中,它被扩展用于访问环境变量。

常用属性

// 环境变量访问
console.log(import.meta.env.VITE_APP_TITLE)
// 模块 URL
console.log(import.meta.url)
// 内置环境变量
console.log(import.meta.env.MODE) // 当前模式
console.log(import.meta.env.DEV) // 是否开发环境
console.log(import.meta.env.PROD) // 是否生产环境
console.log(import.meta.env.BASE_URL) // 基础公共路径

环境配置文件

文件命名规则

.env # 所有环境
.env.local # 所有环境(本地)
.env.development # 开发环境
.env.production # 生产环境
.env.test # 测试环境

配置文件示例

# .env.development
VITE_API_URL=http://dev-api.example.com
VITE_APP_TITLE=开发环境
# .env.production
VITE_API_URL=http://api.example.com
VITE_APP_TITLE=生产环境

环境切换与命令

package.json 配置

{
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview",
"dev:test": "vite --mode test",
"build:test": "vite build --mode test"
}
}

运行命令

yarn dev # 开发环境
yarn build # 生产环境
yarn dev:test # 测试环境

最佳实践与示例

配置文件管理

// config/index.js
const config = {
development: {
apiUrl: import.meta.env.VITE_API_URL,
title: import.meta.env.VITE_APP_TITLE,
},
production: {
apiUrl: import.meta.env.VITE_API_URL,
title: import.meta.env.VITE_APP_TITLE,
}
}
export default config[import.meta.env.MODE]

vite.config.js 配置

import { defineConfig } from 'vite'
export default defineConfig(({ command, mode }) => {
return {
base: mode === 'production' ? '/prod/' : '/',
server: {
port: mode === 'development' ? 3000 : 8080,
},
build: {
// 生产环境配置
rollupOptions: {
// ...
}
}
}
})

类型支持

环境变量类型声明

// env.d.ts
interface ImportMetaEnv {
readonly VITE_APP_TITLE: string
readonly VITE_API_URL: string
// 更多环境变量...
}
interface ImportMeta {
readonly env: ImportMetaEnv
}

注意事项与常见问题

  1. 安全性考虑

    • 只有 VITE_ 前缀的变量会暴露给客户端
    • 敏感信息不要存储在客户端可访问的变量中
  2. 构建优化

    • 环境变量在构建时被静态替换
    • 不要在运行时动态访问环境变量
  3. 本地开发

    • 使用 .env.local 存放本地特定配置
    • .env.local 应该被加入 .gitignore
  4. 最佳实践

    • 集中管理环境配置
    • 使用类型声明增强开发体验
    • 遵循环境变量命名规范

Vite 的环境配置系统提供了强大而灵活的功能,通过合理使用环境变量和配置文件,可以很好地管理不同环境下的应用行为。遵循最佳实践和注意事项,可以构建出更安全、可维护的应用。

posted @   非法关键字  阅读(122)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示