【问题标题】:Env Vars is undefined in my seed.js file (NODEJS)在我的 seed.js 文件(NODEJS)中未定义 Env Vars
【发布时间】:2020-11-01 03:44:03
【问题描述】:

所以我正在处理这个项目,一切正常,我的 .env 正在工作,所有 env 变量都在变体文件中定义。然后我决定为我的数据库制作一个种子文件,但它无法从 .env 读取 MONGODB_URL 值,并且它的输出未定义。
虽然它几乎可以在我使用它的任何地方工作(同一个变量!)

我已经在我的应用中配置了 .env。

这是我的 server.js:

#!/usr/bin/env node
require('dotenv').config()
require('./db/mongoose.js')

const cors = require("cors")
const express = require('express')
const userRouter = require('./routers/user.router')
const answerRouter = require('./routers/answer.router')
const questionRouter = require('./routers/question.router')

console.log(process.env.MONGODB_URL) // works!
const port = process.env.SERVER_PORT // port = 5000

const app = express()
app.use(express.json())
app.use(cors())
app.use(userRouter) 
app.use(questionRouter)
app.use(answerRouter)


app.listen(port,()=>{
    console.log("server is up on port: " + port) //server is up on port 5000
})

这是我的 .env

SERVER_PORT = 5000
MONGODB_URL='mongodb://127.0.0.1:27017/app0-dev-database'

这是我的seed.js

const seeder = require('mongoose-seed');

console.log(process.env.MONGODB_URL) // undefined
seeder.connect(process.env.MONGODB_URL, function(){ // error
    seeder.loadModels([
        './server/models/user.model.js',
        './server/models/question.model.js'
    ]);
    seeder.clearModels (['User','Question' ], function(){
        seeder.populateModels(data, function (err, done){
            if(err) {
                return console.log("seed err", err)
            }
            if (done) {
                return console.log("seed done", done);
            }
            seeder.disconnect()
        })
    })
})

this is my directory structure
MONGODB_URL 的值未定义
我需要知道如何读取它的值

提前谢谢你

【问题讨论】:

    标签: node.js mongoose environment-variables


    【解决方案1】:

    如果 seed.js 不以任何方式要求/加载 server.js,您就不能依赖 dotenv 调用 - 您需要在两个文件中都要求它。
    在“seed.js”中你应该写如下:

    require('dotenv').config()
    

    【讨论】:

    • 哦,那行得通。太简单了,我没想到。非常感谢您的帮助
    猜你喜欢
    • 2020-11-16
    • 2018-06-29
    • 1970-01-01
    • 2020-05-06
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 1970-01-01
    • 2020-04-03
    相关资源
    最近更新 更多