提问者:小点点

尝试运行节点脚本时“dotenv.load()不是函数”


我正在尝试复制导入脚本,以便将我的Firebase RTD数据发送到Algolia。 当尝试运行脚本时,它失败了,并说dotenv.load不是一个函数。

env文件与index.js文件位于同一个目录中。 我试过移动。env文件,但是没有任何帮助。 下面是index.js的开始代码:

const algoliasearch = require('algoliasearch');
const dotenv = require('dotenv');
const firebase = require('firebase');

//load values from the ./env file in this direcotry into process.env
dotenv.load();

//config firebase
firebase.initializeApp({
    databaseURL: process.env.FIREBASE_DATABASE_URL,
});

我能做什么? 对需求使用。config()也没有帮助。


共3个答案

匿名用户

根据NPM文档,您应该使用dotenv.config()。

匿名用户

这对我很有效:

require('dotenv').config({path:'my-app/.env'});

我右键单击。env文件以获取相对路径。

匿名用户

为了补充@Ahmad的答案,包的文档要求您使用dotenv.config()加载。env文件。 另外,根据路径的位置,您可以将对象{path:/path/to/your/file}传递给对象。 如果您需要nodejs标准库中的path包来解析路径,以确保您获得到文件的正确路径,这可能会有所帮助。