PouchDB在数组中找到

时间:2017-03-03 17:28:04

标签: angular pouchdb

我在PouchDB中插入了以下文档(一个):

{ 
 "_id": "5eaa6d20-2019-44e9-8aba-88cfaf8e02542",
 "data" = [
  {
    "desc": "VERSION",
    "id": 1452,
    "value": "32"
  },
  {
    "desc": "FIRM",
    "id": 1453,
    "value": "3232"
  },
  {
    "desc": "NONVERSION",
    "id": 1454,
    "value": "32213"
  },
  {
    "desc": "VERSION",
    "id": 1455,
    "value": "32_1"
  },
  {
    "desc": "VER",
    "id": 1456,
    "value": "32_3"
  }
]}

我正在寻找的是获取具有desc =“VER”或以“VER”开头的JSON对象的选项。实现这一目标的最佳方法是什么?

我尝试过以下代码:

this.db.find({
    "selector" : {
      "data" : {
        "$elemMatch" : {
          "desc": { $eq: 'VER'},
        }
      }
    },
    fields: ['desc', 'value'],
}).then((result) =>  {
  console.log('RESULT: ' + result);
}).catch((error) => {
  console.log('Error while searching', error)
});

任何提示,为什么这不会返回任何结果?

问候!

1 个答案:

答案 0 :(得分:2)

我通过使用我在此详述的标准索引/查询解决方案实现了这一目标:

PouchDB emit object from an array of objects

问候!