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

如何解决Node.js与Express.js中process.loadEnvFile()不是函数的报错?

解决process.loadEnvFile()不是函数的问题

出现这个报错的核心原因是:process.loadEnvFile()是Node.js v20.6.0及以后版本才新增的内置API,你的Node.js版本低于这个版本的话,就会触发这个错误。下面给两种解决办法:

办法一:升级Node.js版本

  • 先查自己当前的Node.js版本,在终端运行:node -v
  • 如果版本低于v20.6.0,直接升级到该版本或更高(可以用nvm、n工具或者官方安装包升级)
  • 升级完成后,原代码里的process.loadEnvFile()就能正常调用了,默认会加载项目根目录的.env文件,也可以指定自定义路径:process.loadEnvFile('./config/.env')

办法二:用dotenv包兼容低版本Node.js

如果不想升级Node.js,就用社区维护的dotenv包来加载环境变量:

  1. 安装dotenv:在终端运行npm install dotenv
  2. 修改代码,把dotenv的配置放在最顶部:
import dotenv from 'dotenv';
dotenv.config();

import express, { json } from 'express';

const app = express();
app.use(json());

const port = process.env.PORT || 3000;

app.listen(port, () => console.log(`Listening on ${port}`));

要是你的项目用的是CommonJS语法(用require导入),就改成这样:

require('dotenv').config();
const express = require('express');
const app = express();
app.use(express.json());

const port = process.env.PORT || 3000;

app.listen(port, () => console.log(`Listening on ${port}`));

另外要注意:项目根目录得有.env文件,内容格式是键=值,比如PORT=3001,这样才能正常读取到环境变量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 09:29:55