gpt4 book ai didi

javascript - 如何在 LokiJS 中添加数据更改监听器?

转载 作者:行者123 更新时间:2023-12-03 02:42:03 24 4
gpt4 key购买 nike

我正在尝试向 LokiJS 添加监听器,以便每当任何集合中的数据发生更改时我都会收到通知(尽管根据文档 LokiJS 支持数据更改通知)。但是我无法收到数据更改的通知。

下面是我正在使用的代码片段:

import { Component, OnInit } from '@angular/core';
import { Message } from 'primeng/components/common/api';
import { MessageService } from 'primeng/components/common/messageservice';

import * as loki from 'lokijs';

@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {

db: loki;

constructor(private messageService: MessageService) {

}

ngOnInit() {
this.db = new loki('kp-loki.db');
this.db.addCollection('kp_users', { asyncListeners: true });
console.log(this.db.addListener('changes', event => console.log(event)));
}

add() {
this.messageService.add({ severity: 'sucess', summary: 'data added' });
const uu = this.db.getCollection('kp_users');
uu.insert({ id: 1, name: 'kp', city: 'blr' });
}

view() {
const uu = this.db.getCollection('kp_users');
this.messageService.add({ severity: 'sucess', summary: JSON.stringify(uu.data) });
}

}

最佳答案

好的,我会寻找以下事件

  this.events = {
'init': [],
'loaded': [],
'flushChanges': [],
'close': [],
'changes': [],
'warning': []
};

但是我应该使用下面的事件,在更改监听器事件时,它有效

  // events
this.events = {
'insert': [],
'update': [],
'pre-insert': [],
'pre-update': [],
'close': [],
'flushbuffer': [],
'error': [],
'delete': [],
'warning': []
};

关于javascript - 如何在 LokiJS 中添加数据更改监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48288694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com