Я пытаюсь сделать запрос из базы данных, и мне нужно объединить результаты нескольких столбцов в один массив. Я достиг этого, сделав все запросы в Promise.all (), и это работает. Однако проблема в том, что мне нужно получить доступ к этим данным в другом файле. Когда мне требуется файл A в моем файле B, массив кажется пустым?
fileA. js
const days = ["monday", "tuesday", "wednesday"]
function dbRequest(day){
return knexInstance.select('shift_time',`${day}`).from('shr');
}
Promise.all([
dbRequest(days[0] ? days[0]: null),
dbRequest(days[1] ? days[1]: null),
dbRequest(days[2] ? days[2]: null)
])
.then(results => {
shiftR = results;
console.log(shiftR)
module.exports = { shiftR }; //the array only contains the dates once all the promises have been executed
});
FileB. js
const shiftR = require('./fileA');
console.log(shiftR);
I нахожусь в тупике о том, как это исправить. Если есть лучший способ выполнить sh то, что я пытаюсь сделать, тогда я был бы признателен за предложения.
Для контекста, это то, как выглядит база данных, но я не думаю, что эта информация нужен для вопроса.
shift_time monday tuesday wednesday (...)
6 AM 1 1 1
7 AM 2 2 2
8 AM 3 3 3
9 AM 3 3 3