Я начинаю в 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 ()
Если кто-то знает мою ошибку, заранее спасибо!