lowdb:索引N处的更新记录

时间:2017-04-15 15:52:14

标签: javascript node.js

我正在使用lowdbhttps://github.com/typicode/lowdb)和持久存储空间(file-async):

const low = require('lowdb');
const db = low('db.json', {storage: require('lowdb/lib/storages/file-async')});
db.defaults({inputs: []}).value();

从客户端我收到此对象:

var data = {
  "idx": 1,
  "item": { "Name": "blabla", "Surname": "bleble" }
}

我想用收到的新信息更新记录号idx。这不会更新任何内容:

if (data.idx < db.get("inputs").size()) {
    db.get("inputs").nth(data.idx)
        .assign(data.item)
        .write();
}

在我的实际数据中,我有超过2项。

1 个答案:

答案 0 :(得分:0)

这里是解决方案:

db.get('inputs')
    .nth(data.idx)
    .assign(data.item)
    .value();
db.write();

请注意,最后一种方法应该是单独的电话。将write()电话放在链接的末尾不起作用,至少在我的设置中。