var sqlite_connection = new Promise(function(resolve,reject){
new sqlite3.Database("edupages", function(err){
if(err){reject(err)}
else{resolve()}
})
})
sqlite_connection.then(
function(){console.log('Connected to the sqlite database')},
function(err){console.log(err)}
)
* Консоль
показывает «Подключено к базе данных sqlite», когда выполняется код.
Из документов узла-sqlite3:
новая sqlite3.Database (имя файла, [режим], [обратный вызов])
обратный вызов (необязательно): если предусмотрено, эта функция будет вызываться, когда
база данных была открыта успешно или когда произошла ошибка.
Первый аргумент - это объект ошибки. Когда это ноль, открытие успешно.
Если обратный вызов не предоставлен и произошла ошибка, возникает событие error
с объектом ошибки в качестве единственного параметра будет передан на
объект базы данных. Если открытие прошло успешно, событие «open» без
параметры выводятся независимо от того, был ли предоставлен обратный вызов
или нет.
Должен ли я добавить прослушиватель событий для открытого события? Вместо того, чтобы просто проверять значения первого параметра обратного вызова (т. Е. Null: означает, что база данных открыта, или error: означает, что произошла ошибка)
Если это так, то является ли изначально плохой дизайн со стороны авторов библиотеки? Или есть лучший способ сделать это?