我有一个执行以下操作的基本登录系统:
插入后,我从插入的UIButton
中选择id
。这在第一次登录时是正确的,但是当我注销并使用新的用户名登录时,插入速度太慢,导致我的选择引发异常,因为插入尚未完成。我该如何解决?
我的代码:
Database.js:
username
Login.js:
getPlayerByName (username) {
return this.knex("penguins").first("*").where("username", username)
}
getPlayerExistsByName (username) {
return this.knex("penguins").where("username", username).select("username")
}
insertPlayer (username) {
return this.knex("penguins").insert({username: username}).then(() => {
Logger.info(`Inserted ${username}`)
}).catch((err) => {
Logger.error(err)
})
}
答案 0 :(得分:0)
尝试在then的回调中使用异步函数,并在插入中使用await并让用户同步执行这两种方法