Попытка обновить базу данных LokiJS, но с ошибкой «Попытка обновить несинхронизированный документ» - PullRequest
0 голосов
/ 27 июня 2019

Попытка динамически добавлять записи людей и фруктов, которыми они владеют, в Loki JS, но я продолжаю получать ошибку Trying to update unsynced document. Please save the document first by using insert() or addMany().У кого-нибудь есть идеи, как это сделать успешно?

Я зарегистрировал входящие значения, и они совпадают с тем, что уже найдено в БД.

const loki = require('lokijs');

const db = new loki('loki.json');

const peopleAndFruits = db.addCollection('peopleAndFruits');

peopleAndFruits.insert({ dbname: 'person', fruits: 10 });

const createOrInsertUserToDb = (name, fruitNumber) => {
    const data = peopleAndFruits.find({ dbname: name });
    console.log('db entry before updated ', data[0].dbname);
    if (data[0].dbname !== name) {
        // console.log('this person did not exist in our database');
        peopleAndFruits.insert({ dbname: name, fruits: fruitNumber });
    } else {
        // console.log('previously existing entry');
        peopleAndFruits.update({
            dbname: data[0].dbname,
            fruits: Number(fruitNumber + data.fruits),
        });
    }
    // console.log('data after update or insert', peopleAndFruits.data);
    db.saveDatabase();
};

...