С Dex ie, могу ли я получить все объекты в таблице, где поле массива имеет указанное значение c в качестве одного из его элементов? - PullRequest
0 голосов
/ 06 февраля 2020

У меня есть таблица, в которой у каждого объекта есть поле, представляющее собой массив строк: например, { people: ['John', 'Bob', 'Sue'] }. Мне нужны все объекты в таблице, которые имеют 'Sue' в массиве people.

Может ли Dex ie сделать это?

1 Ответ

1 голос
/ 06 февраля 2020

Да, используя MultiEntry индексы, вы можете сделать именно это.

const db = new Dexie("testdb");
db.version(2).stores({
  groups: 'id, *people'
});

async function addRow() {
  await db.groups.add({id: 1, people: ['John', 'Bob', 'Sue']});
}

async function findSuesGroups() (
  return await db.groups.where('people').equals('Sue').toArray();
}

См. Другие примеры на https://dexie.org/docs/MultiEntry-Index

...