Next.js 13.5.4开发环境未加载.env.development.local问题求助
Next.js 13.5.4 开发环境加载指定.env文件问题
首先明确Next.js的环境变量加载优先级:.env.local的优先级高于.env.development.local,所以默认执行npm run dev时,.env.local里的变量会覆盖.env.development.local的同名变量,这是框架的默认逻辑。
要实现仅加载.env.development.local而非.env.local,可以通过以下步骤解决:
- 安装
dotenv-cli工具,用于手动指定加载的环境变量文件:
npm install dotenv-cli --save-dev
- 修改
package.json中的dev脚本,明确指定加载.env.development.local:
"dev": "NODE_ENV=development dotenv -e .env.development.local -- next dev"
这样配置后,执行npm run dev时会优先加载.env.development.local的变量,且不会自动加载.env.local,完全满足需求。
补充:如果只是希望.env.development.local的变量不被.env.local覆盖,也可以直接删除.env.local中与.env.development.local重复的变量,但这种方式无法完全隔离两个文件的加载。
内容的提问来源于stack exchange,提问作者Chris Hunter-Johnson
相关产品推荐
相关产品推荐

