Здравствуйте, я храню конфиги в переменной окружения, в файле .env в корне проекта, и подгружаю его через модуль
dotenv.
И если я пытаюсь после вызова Dotenv подключить БД через import, у меня вылетает ошибка, а суть ошибки, что .env не успевает загрузиться до подключения БД.
Но если я подключаю БД через require, то все работает.
Почему так? Как можно решить, не очень хочется мешать в коде и import, и require.
Файл с БД:
import Sequelize from 'sequelize'
const sequelize = new Sequelize(
process.env.DB_NAME,
process.env.DB_USER,
process.env.DB_PASS, {
host: process.env.DB_HOST,
dialect: process.env.DB_DIALECT,
pool: {
max: Number(process.env.DB_POOL_MAX),
min: Number(process.env.DB_POOL_MIN),
idle: Number(process.env.DB_POOL_IDLE),
acquire: Number(process.env.DB_POOL_ACQUIRE)
},
logging: false
});
(async () => {
try {
await sequelize.authenticate()
console.log('Сonnected to database')
} catch (error) {
const message = 'Error connecting to database: ' + error;
console.error(message)
process.exit(-1)
}
})()
export default sequelize
Файл где подключаю:
const dotenvResConnect = dotenv.config()
if (dotenvResConnect.error) {
throw dotenvResConnect.error
}
import db from './include/db'
// const db = require('./include/db')