Получить все отфильтрованные значения в кроссфильтре - PullRequest
4 голосов
/ 31 января 2020

У меня есть этот cf:

const paymentsCf = crossfilter([
  {id: 1, quantity: 2, total: 190, tip: 100, type: "tab"},
  {id: 2, quantity: 2, total: 190, tip: 100, type: "tab"},
  {id: 3, quantity: 1, total: 300, tip: 200, type: "visa"}
]);

, и я создаю измерение по идентификатору и фильтрую его следующим образом:

const dimension = paymentsCf.dimension(({ id }) => id);
dimension.filter(2);

Если я сделаю console.log(paymentsCf.groupAll().value()) достаточно честно, я см. 1.

Но как я могу получить доступ ко всему отфильтрованному объекту, чтобы получить количество, сумму, чаевые и тип?

Я знаю, что могу сделать feedbackCf.all(), но это показывает мне все 3 объекта. Не только отфильтрованный.

Спасибо!

1 Ответ

2 голосов
/ 31 января 2020

Вам просто нужно добавить метод top() для предоставления результата:

const dimension = paymentsCf.dimension(({ id }) => id);
const res = dimension.filter(2);
res.top(1);

output:

[ { id: 2, quantity: 2, total: 190, tip: 100, type: 'tab' } ]
...