你知道为什么吗?
提前感谢您!
<div class="game-footer">
<div class="button-add-rem">
<button wii-game-button></button>
</div>
</div>
<!-- The button is not on a FORM -->
// This is the event Listener
gameButton.addEventListener("click", (e) => {
fetch(`http://localhost:3000/ajoutsuppr?gameID=${gameID}`)
.then(resp => resp.json())
.then(data => {
if(data.result === false){
console.log("Was not on list, added")
} else {
console.log("Was on list, deleted")
}
})
.catch(error => {
console.log('Error when request :', error);
});
});
app.get('/ajoutsuppr', (req, res) => {
const gameID = req.query.gameID; // Recover game ID
db.get(`SELECT * FROM gamelist WHERE id = ?`, [gameID], (err, row) => {
if (err) {
console.error('Error :', err.message);
} else {
if (row) {
// This part make the page reloading
db.run(`DELETE FROM gamelist WHERE id = ?`, [gameID], (err) => {
if (err) return console.error("Erro during inserting id to database: ", err.message);
});
res.json({result: true}) //If game was in the list, then delete
} else {
// This part make the page reloading
db.run(`INSERT INTO gamelist VALUES (?,?)`, [gameID, Date.now()], (err) => {
if (err) return console.error("Error during inserting id to database: ", err.message);
}); //else, i add it
res.json({result: false})
}
}
});
});
我期望每次我使用
db.run
函数时都不会重新加载页面
您可以使用event.preventdefault()取消事件。