React native 按键反应本机couchbase lite筛选器

React native 按键反应本机couchbase lite筛选器,react-native,couchbase,couchbase-lite,React Native,Couchbase,Couchbase Lite,我使用react native创建了一个移动应用程序,我使用couchbase进行同步。我已经为此使用了该模块。 根据文档,我可以使用queryView方法从密钥中筛选。但在我的应用程序中,我只能使用queryView方法过滤整数值。当我对字符串使用queryView方法时,它不会过滤文档中的值,它只返回相关类型中的所有文档。按照这种方式,我定义了我的观点 views: { person_view: { map: 'function

我使用react native创建了一个移动应用程序,我使用couchbase进行同步。我已经为此使用了该模块。

根据文档,我可以使用queryView方法从密钥中筛选。但在我的应用程序中,我只能使用queryView方法过滤整数值。当我对字符串使用queryView方法时,它不会过滤文档中的值,它只返回相关类型中的所有文档。按照这种方式,我定义了我的观点

        views: {
          person_view: {
            map: 'function (doc) { if (doc.type === "Person") { emit(doc.name, null);} }'
          },
        }
下面是通过过滤方法

  filterDocumentByAttribute(view, key) {
    return new Promise((resolve, reject) => {
      let options = {
        key: key,
        include_docs: true
      };
      this.database.queryView(DESIGN_DOCUMENT_NAME, view, options)
      .then((res) => {
        console.log(res.rows);
        resolve(res.rows);
      })
      .catch((error) => {
        console.log(error);
        reject(error);
      });
    });
  }
当关键参数是integer时,该方法工作正常,但当它是字符串时,它只返回所有文档。

这看起来像是一个错误

代码对提供的
key
参数的值调用
JSON.stringify
,这在处理引号方面有点棘手。Mozilla文档对更多内容进行了很好的讨论