我正在尝试使用 ES7 异步等待功能来避免在我的某些代码中出现回调地狱。我正在使用 SQLite,我需要在回调的上下文中访问一个变量。
为了说明,这是来自 sqlite3 npm 模块的东西:
module.exports = function() {
db.run("INSERT INTO foo ...", function(err) {
// err is null if insertion was successful
console.log("inserted id:", this.lastID);
});
};
假设我创建了一个运行上述代码的 Promise,我如何this.lastID
使用 async-await 功能访问它?
module.exports = async function() {
try {
await db.run("INSERT INTO foo ...");
// How can I access the `this` context?
} catch (err) {
}
};