1
私はLokiJSを使用しています。ほとんどの部分で問題ありません。私はデータベースからレコードを削除することはできません。LokiJS - removeとfindAndRemoveは機能しません(saveDatabaseは保存しません)
findは私に削除する正しいレコードを取得しますが、removeAndRemove()はsaveDatabaseの後に削除しないでください。私は間違って何をしていますか?
(注:私はloadDatabase(...)コールバックの外saveDatabaseを試してみた - 変更なし、私はそれを再実行するたびに、私は私が削除されたと思ったレコードがまだそこにある)
ここでコードは次のとおりです。 dbnameは、ファイルへの有効なパスである
var db = new loki(dbName);
db.loadDatabase({}, function (e) {
var orders = db.getCollection("orders");
console.log(orders.count() + " orders found... iterating");
orders.find().forEach((v, i) => {
console.log(i + "." + v.key + " " + v.places.display + " " + v.theme + " " + moment(v.date).format("DD MMM YYYY HH:mm"));
});
}
let dKey = "some key that is valid";
if (!dKey) {
console.log("no key specified, returning");
return;
}
console.log("deleting specific record " + dKey);
let dObj = orders.find({ key: dKey });
if (!dObj || dObj.length == 0) {
console.log("no such record, returning");
return;
}
console.log(dObj[0]);
orders.remove(dObj[0]);
db.saveDatabase((e) => {
console.log("save complete");
});
}
});