通过 pouchdb 查询持续更新数据

Continuous data update via pouchdb query

我有一个 pouchdb 数据库,其中包含许多我在需要数据时查询的视图设置。我正在使用可观察对象来处理查询。但是我必须刷新界面才能查看数据库中的任何数据更改。有什么办法可以让 Observable 直接读取这些数据更改吗?我的代码是:-

home.ts

 this.postsService.getPosts().subscribe((posts) => {

      this.posts = posts.rows.map(row => {
        console.log(row.value);
        return row.value;
      });

    });

posts.ts

  getPosts(): Observable<any> {
    return Observable.fromPromise(this.db.query('app/inputs'));
  }

您可以将 db.changes 与您的视图一起使用,这样您就只会获得与视图相关的更改的事件:

db.changes({
  filter: '_view',
  view: 'app/inputs',
  live: true,
  since: 'now',
  include_docs:true
}).on('change', (change) => { this.handleChange(change); });

有关这方面的更详细说明,请参阅 PouchDB docs 上的筛选更改部分。