У меня есть приложение NodeJS, где я использую ExcelJS на одном из маршрутов (на основе Express). В следующем фрагменте простой цикл должен считывать строки из файла Excel, а затем вставлять их в массив. Однако, похоже, они не вставляются.Значения не вставлены в массив
router.get('/work', function(req, res, next) {
var posts = [];
var workbook = new Excel.Workbook();
workbook.xlsx.readFile(file).then(function() {
var worksheet = workbook.getWorksheet(1);
worksheet.eachRow({ includeEmpty: true }, function(row, rowNumber) {
console.log(JSON.stringify(row.values));
posts.push(JSON.stringify(row.values));
});
});
res.json(posts);
});
Это console.log
линия работает просто отлично, так как я могу увидеть значение в консоли, как они вошли. Однако значения просто не вставлены в массив posts
по какой-либо причине. Кто-нибудь знает почему?
Спасибо за ваш ответ, однако я не уверен, что вы изменили в коде выше. Кажется, это похоже на мое. Если это было сделано специально, не могли бы вы привести пример того, что вы предлагаете? – DemCodeLines
@DemCodeLines это не идентично, но определенно трудно определить визуально. Я добавил комментарий, который (надеюсь) разъясняет вещи –
Спасибо, теперь это имеет смысл. – DemCodeLines