【发布时间】:2021-01-04 20:47:36
【问题描述】:
我正在使用 next.js 并尝试设置一个环境变量 - 我当然安装了 dotenv,因为我被告知无法找到该模块并且对原因一无所知。为什么会发生这样的事情?
dotenv 在我的依赖项中,但是当我运行 dotenv --version 时,我被告知“找不到 bash 命令”
我应该说下面的代码可能与问题无关。
在我拥有的文档根目录下的 .env 文件中
API_URL = http://localhost:1337
然后在我的配置文件中我有
const path = require('path');
require('dotenv').config();
module.exports = {
env: {
API_URL: process.env.API_URL,
},
webpack: (config) => {
config.resolve.alias['components'] = path.join(_dirname, 'components');
config.resolve.alias['public'] = path.join(_dirname, 'public');
return config;
},
};
我在控制台上得到了这个:
Loaded env from C:\Users\sidtu\Documents\Websites\next-example\.env
Cannot find module 'dotenv/types'
code: 'MODULE_NOT_FOUND',
【问题讨论】:
-
如果你做
$ npm install dotenv怎么办? -
我已经安装了 dotenv - 我没有收到任何错误,一切都很好。我也跑了扩展版
-
检查你的node_modules中是否有dotenv/types文件夹,如果没有,安装:npm i dotenv/types。如果它在那里,请尝试删除您的 node_modules 并重新安装:npm install
-
@ST 你也可以试试安装
$ npm install --dotenv-extended吗? -
检查该文件后,我可以看到它确实存在,这很奇怪。我已经删除了节点模块并运行了 npm install - 同样的问题
标签: node.js reactjs npm next.js dotenv