使用 PouchDB 过滤复制时未定义要求

require is not defined when using PouchDB filtered replication

我在 PouchDB 和 CouchDB 之间设置了双向复制,我想过滤复制,以便只有相关文档最终出现在我的本地 pouch 中。

pouchDB('medic').sync('http://localhost:5984/medic', {
  live: true,
  retry: true,
  filter: 'medic/doc_by_place'
});

当我执行同步时,我从下面的匿名函数中得到 Uncaught ReferenceError: require is not defined

(function () { return function(){return require("lib/app")["filters"]["doc_by_place"].apply(this, arguments);} })()

这是从哪里来的,为什么 require 没有定义?

此错误来自 sync 一侧,而不是 来自 一侧。服务器端过滤器仅对 from 调用有意义。要过滤 复制,请执行 adhoc filter function.

我最终将复制分成两部分,如下所示。

pouchDB('medic')
  .replicate.from('http://localhost:5984/medic', {
    live: true,
    retry: true,
    filter: 'medic/doc_by_place'
  });

pouchDB('medic')
  .replicate.to('http://localhost:5984/medic', {
    live: true,
    retry: true
  });