Я получаю вышеуказанную ошибку от героку.Я испробовал несколько решений, в том числе: обновление движка в package.json для версии узла и npm, а также с помощью команды heroku restart.Я также удостоверился, что порт в моей конфигурации БД не был жестко запрограммирован, как предлагали некоторые ответы.Вот мой конфиг:
var url = process.env.DATABASEURL || "mongodb://localhost/roam-
hub";
mongoose.connect(url);
Ошибка также указывает на мой файл dotenv, который подключен и настроен правильно, я думаю?Все отлично работает в моей местной среде.У кого-нибудь есть новое предложение о том, как решить эту проблему?
throw err;
2018-09-12T12:22:20.970580+00:00 app[web.1]: ^
2018-09-12T12:22:20.970582+00:00 app[web.1]:
2018-09-12T12:22:20.970583+00:00 app[web.1]: Error: Cannot find
module 'dotenv'
2018-09-12T12:22:20.970585+00:00 app[web.1]: at
Function.Module._resolveFilename
(internal/modules/cjs/loader.js:594:15)
Вот мой файл package.json:
{
"name": "roam-app",
"version": "1.0.0",
"engines": {
"node": "10.5.0",
"npm": "6.2.0"
},
"description": "central app for all things Roam",
"main": "app.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node app.js"
},
"author": "*",
"license": "ISC",
"dependencies": {
"body-parser": "^1.18.3",
"cloudinary": "^1.11.0",
"connect-flash": "^0.1.1",
"connect-timeout": "^1.9.0",
"cookie-parser": "^1.4.3",
"ejs": "^2.6.1",
"express": "^4.16.3",
"express-session": "^1.15.6",
"method-override": "^2.3.10",
"moment": "^2.22.2",
"mongoose": "^5.1.5",
"multer": "^1.3.1",
"nodemailer": "^4.6.7",
"passport": "^0.4.0",
"passport-local": "^1.0.0",
"passport-local-mongoose": "^5.0.0",
"request": "^2.87.0",
"session": "^0.1.0"
},
"devDependencies": {
"dotenv": "^6.0.0"
}
}
Я начал получать эту ошибку после того, как я изменил некоторый основной HTMLфайлы и толкнул к героку.Заранее спасибо за помощь.