Ошибка при вставке данных в LokiJS с помощью VueJS - PullRequest
0 голосов
/ 15 мая 2019

Я начинаю в Electron с VueJS1.0 && LokiJS, и мне было трудно найти решение для ошибки, которая возникает каждый раз, когда я вставляю в коллекцию вторые данные:

Erro:

Uncaught Error: документ уже в коллекции, используйте update ()

вставить-client.html

    <form class="pane-body" id="formInsertClient">
            <h3>Insert Client</h3>
            <div class="form-group form-nome">
              <input type="text" id="name" class="form-control" v-model="client.name" placeholder="Name" />
            </div>
            <div class="form-group form-dateNasc">
              <input type="date" id="dateNasc" class="form-control" v-model="client.dateNasc" placeholder="DateNasc">
            </div>
            <div class="form-group form-cpf">
              <input type="text" id="cpf" class="form-control" v-model="client.cpf" placeholder="CPF">
            </div>

            <a href="index.html"><button type="button" id="cancel" class="btn btn-danger">Cancel</button></a>
            <button type="button" @click="insertClient()" class="btn btn-primary">Save</button>
    </form>

вставка-client.js

    var read = require('read-file-utf8')
    var loki = require('lokijs');
    var db = new loki('db.json'); 
    var data = read(__dirname + '/db.json');
    db.loadJSON(data);

    var clients = db.getCollection('clients');
    if (!clients)
    {
        clients = db.addCollection('clients');
        db.save();
    }

    function ready(fn) {
        if (document.readyState != 'loading')
        {
          fn();
        } else {
            document.addEventListener('DOMContentLoaded', fn);
        }
    }


    window.Vue = require('vue');
    new Vue({
        el: 'body',
        data: {
            client: {
                name: '',
                dateNasc: '',
                cpf: ''
             }

        },
        methods:
        {
            insertClient: function ()
            {
                if (this.client.name != '')
                {
                    clients.insert(this.client);
                    db.save();
                    document.getElementById("formInsertClient").reset();
                }
            }
        }
    })

Я ввожу данные в форму, сохраняю их, очищаю форму, и когда я ввожу новые данные и отправляю сохранение, это подтверждает ошибку:

Uncaught Error: документ уже в коллекции, используйте update ()

Если кто-то знает мою ошибку, заранее спасибо!

...