You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ES6中使用dotenv读取环境变量时process未定义,求助

解决ES6模块中读取环境变量时process is not defined的问题

针对Node.js ES模块环境(package.json设"type": "module")

  • 先更新dotenv到最新版本,确保对ES模块的支持:
    npm update dotenv
    
  • 确认.env文件位于项目根目录,若路径特殊可手动指定:
    import dotenv from "dotenv";
    import { resolve } from "path";
    dotenv.config({ path: resolve(process.cwd(), ".env") });
    
  • 若使用TypeScript,需安装@types/node让类型系统识别process:
    npm install @types/node --save-dev
    

针对浏览器端构建工具(如Vite、Webpack)

浏览器环境本身不存在Node.js的process对象,需结合构建工具处理:

  • Vite:环境变量需以VITE_为前缀(如.env中写VITE_EXAMPLE=xxx),代码中通过import.meta.env.VITE_EXAMPLE读取,无需手动引入dotenv。
  • Webpack:可使用dotenv-webpack插件,或通过webpack.DefinePlugin手动注入process.env相关变量,配置完成后即可用process.env.EXAMPLE读取。

基础排查

  • 检查.env文件语法:键值对无需额外加引号(值含空格除外),示例:EXAMPLE=test_value。

内容的提问来源于stack exchange,提问作者feefewfgwtg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 15:15:32