$db.find

Метод $db.find() производит поиск объектов в хранилище в соответствии с запросом.

Синтаксис

$db.find(query, store)

Параметры

query

Запрос к хранилищу (Javascript object).

Формат запроса:

    {
        "query": {},
        "skip": 0,
        "take": 100,
        "orderBy": "createdAt",
        "currentId": "56370687-a1c8-4e04-9eb1-a755ca0de570",
        "currentIndex": "",
        "props": ["_id", "name"]
    }

Где

  • query — объект со значениями фильтра
  • skip — смещение (int)
  • take — запрашиваемое количество объектов в выборке (int)
  • orderBy — поле, по которому требуется провести сортировку (строка, опционально). Если первый символом стоит -, то будет произведена обратная сортировка. Если параметр опущен, будет произведена сортировка по полю name
  • currentId — идентификатор текущего элемента (строка, опционально). Если указан, то будет возвращён индекс текущего элемента в выборке (int), либо, если под условия поиска он не попадает, -1
  • currentIndex — ????
  • props — массив с идентификаторами полей, которые необходимо получить в выборке. Если параметр отсутствует, будут возвращены все поля.

store

Идентификатор хранилища (строка).

Возвращаемые значения

Объект с результатами поиска, или null в случае ошибки.

Формат возвращаемого объекта:

    {
        "items": [],
        "fullCount": 100,
        "currentIndex": -1,
        "currentItem": {},
        "stateCounts": {
            "new": 10,
            "progress": 20
        }
    }

Где

  • items — массив объектов
  • fullCount — общее количество объектов, попадающих под запрос
  • currentIndex — индекс текущего элемента в выборке, или -1, если текущий элемент не попадает под условия выборки
  • currentItem — текущий элемент, если попадает под условия выборки
  • stateCounts — объектов со счетчиками состояний объектов в выборке