Я пытаюсь запустить команду yarn start_dev внутри моего главного каталога C:\Users \THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel
Однако при этом он начинает выдавать ошибку в моем "process.env.DATABASE_URL
", как будто он не распознает мой "dotenv
", который находится в папке" environment
"!
consign v0.1.6 Initialized in C:\Users\THIAGOSAAD\Documents\ DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel
C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\mongoose\lib\connection.js: 428
throw new MongooseError ('The `uri` parameter to` openUri () `must be a +
^
MongooseError: The `uri` parameter to` openUri () `must be a string, got" undefined ". Make sure the first parameter to `mongoose.connect ()` or `mongoose.createConnection ()` is the string.
at new MongooseError (C: \Users\THIAGOSAAD\Documents\DEVELOPMENT\ NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\mongoose\lib\ error\mongooseError.js: 13:11)
at NativeConnection.Connection.openUri (C:\Users\THIAGOSAAD\Documents\ DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\ mongoose\lib\connection.js: 428:11)
at Mongoose.connect (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\ NEORIS \ ALIANSCE\aliansce-app-analyticals-panel\node_modules\mongoose\lib\ index.js: 270: 15)
Если я введу URL-адрес непосредственно на моем server.js, он начнет выдавать ошибки в моем грузе:
consign v0.1.6 Initialized in C:\Users\THIAGOSAAD\Documents\DEVELOPMENT \NEORIS\ALIANSCE\aliansce-app-analyticals-panel
! Entity not found C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\routes
! Entity not found C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ ALIANSCE \ aliansce-app-analyticals-panel\controllers
SERVER ROLLING IN PORT 3000: ')
Но если я запускаю nodemon из каталога, в котором находится start.js, он работает: C: \Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\app\backend\src\start.js
Я хотел бы знать, почему это происходит и как это решить, потому что яЯ пытаюсь загрузить сервер в Heroku, и он не работает, возможно, из-за той же проблемы, с которой работает yarn start_dev
!
МОИ КАТАЛОГИ
SERVER.JS
const express = require('express');
const dotenv = require('dotenv');
const morgan = require('morgan');
const consign = require('consign');
const mongoose = require('mongoose');
const nunjucks = require('nunjucks');
class Application {
constructor(){
this.express = express();
this.dotenv = dotenv.config({ path: './environment/.env' });
this.morgan = morgan('dev');
this.consign = consign();
this.mongoose = mongoose;
this.nunjucks = nunjucks;
// INICIALIZA AS FUNÇÕES AUTOMATICAMENTE
this.initDatabase();
this.initMiddlewares();
this.initConsign();
this.initViews();
}
initDatabase(){
this.mongoose.connect(process.env.DATABASE_URL, {
useCreateIndex: true,
useNewUrlParser: true
});
}
initMiddlewares(){
this.express.set('view engine', 'njk');
this.express.use(express.static('../../app/frontend'));
this.express.use(express.json());
this.express.use(express.urlencoded({ extended: true }));
this.express.use(this.morgan);
}
initConsign(){
this.consign.include('./routes').then('./controllers').into(this.express);
}
initViews(){
this.nunjucks.configure('./views/pages', {
watch: true, // SOMENTE PARA DESENVOLVIMENTO
express: this.express,
autoescape: true
});
}
}
module.exports = new Application().express;
PACKAGE.JSON
{
"author": "THIAGO DE BONIS CARVALHO SAAD SAUD",
"scripts": {
"start_dev": "nodemon app/backend/src/start.js"
},
"dependencies": {
"axios": "^0.18.0",
"bootstrap": "^4.2.1",
"bootstrap-select": "^1.13.5",
"chartjs": "^0.3.24",
"consign": "^0.1.6",
"dotenv": "^6.2.0",
"express": "^4.16.4",
"express-validator": "^5.3.1",
"jquery": "^3.3.1",
"jsonwebtoken": "^8.4.0",
"mongoose": "^5.4.1",
"nunjucks": "^3.1.6"
},
"devDependencies": {
"morgan": "^1.9.1",
"nodemon": "^1.18.9"
}
}