猫鼬.env返回未定义

我正在使用MEVN堆栈建立数据库连接,但出现以下错误;

The `uri` parameter to `openUri()` must be a string,got "undefined"

如果我尝试控制台日志process.env.DATABASE_URL,它只会返回未定义。我做错了什么,这是我的代码;

index.js

import dotenv from 'dotenv';
import Express from 'express';
import Mongoose from 'mongoose';

dotenv.config();

const app = Express();

Mongoose.connect(process.env.DATABASE_URL,{ useNewUrlParser: true });

app.listen(3000,() => {
    // console.log(process.env.DATABASE_URL);
    console.log('server started on port 3000');
});

.env

DATABASE_URL="mongodb+srv://reece:<password>@mevn-tutorial-cluster-egjs6.mongodb.net/auth?retryWrites=true&w=majority"

我出于明显的原因删除了密码

wunbin 回答:猫鼬.env返回未定义

您必须在应用程序的根目录中创建一个.env文件。 在.env文件中,键值应用等号分隔。 例如:

secret=foo
DATABASE_URL=bar:pwd@localhost.com

文档说明: https://www.npmjs.com/package/dotenv

,

您还没有将模板文字用于猫鼬连接。

尝试一下:

Mongoose.connect(${process.env.DATABASE_URL},{ useNewUrlParser: true });

为您的Javascript代码段获取实际的.env变量。

本文链接:https://www.f2er.com/2550248.html

大家都在问