Как создать массив результатов, используя метод sqlite3 each () - PullRequest
0 голосов
/ 30 ноября 2018

Я не могу понять, почему следующий код не заполняет resultArray строками из моей таблицы базы данных с именем voyages.В таблице есть две строки, и я могу увидеть их, если раскомментирую оператор console.log(row).

const express = require ('express')
const app = express()
const sqlite3 = require('sqlite3').verbose()

let db = new sqlite3.Database('shaula.db')

app.get('/',
        function(req, res, next){
                let sql = `SELECT * FROM voyages`
                let resultArray = []
                db.each(sql,
                        function(err, row){
                                resultArray.push(row)
                                // console.log(row)
                        }
                )
                console.log(resultArray)
        }
)

app.listen(3000, () => console.log(`listening on port 3000`))

Когда я запускаю это, консоль просто печатает пустой массив: [].Мне было бы очень интересно узнать, почему это не работает.

...