У меня есть графический интерфейс в javascript (угловой 1).Затем бэкэнд в node.js.И, наконец, эластичный поиск в БД.
В графическом интерфейсе у меня есть несколько переключателей, давайте назовем их фильтром 1 и фильтром 5. Ниже у меня есть список результатов.
По умолчаниювсе результаты показаны.При нажатии переключателя результаты фильтруются в соответствии с критериями, установленными фильтром, на который нажали.
Щелчок означает переход в приложение node.js и запрос результата.Это приложение, в свою очередь, отправит JSON для упругого поиска, чтобы получить результаты из индекса.
Теперь мне нужно реализовать счетчик.Когда вы заходите на мою страницу, мне нужно показать для вас, сколько хитов будет отображаться в списке, если щелкнуть переключатель 1.И так далее для всех переключателей (количество совпадений будет отображаться в виде числа рядом с каждым переключателем).
Надеюсь, это было совершенно ясно.Есть несколько способов решить эту проблему.Коротко:
1 - веб-интерфейс делает столько звонков, сколько переключатели, чтобы получить информацию об общем количестве попаданий для каждого из них.
2 - веб-интерфейс только вызывает бэкэнд, чтобы получить информациюо хиты для каждого радио.Backend, в свою очередь, будет переключаться между кнопками / фильтрами, и для каждого элемента в цикле будет вызываться эластичный элемент для получения информации о попаданиях.
3 - Frontend выполняет только вызов для внутреннего интерфейса.Который, в свою очередь, делает только вызов упругости. Который, в свою очередь, только делает запрос big / с json, который, как я полагаю, будет содержать большую часть времени jJJ, используемого единственным фильтром eash, чтобы получить совокупный результат со счетчиком (числом попаданий) длякаждый из фильтров.
Видите ли вы другие решения?Если нет, то решение 1 и решение 2 можно исправить самостоятельно.Тем не менее, я не уверен в подходе к решению 3. Кто-нибудь может обратиться ко мне в правильном направлении?