Size: a a a

React: русскоязычное сообщество

2021 March 15

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Напрямую в API ходить плохая практика
источник

MU

Michael Uskov in React: русскоязычное сообщество
Fedorchuk Artem
Всем привет!
подскажите пожалуйста как оптимизировать такой кейс.
Работаю с api sec.gov, реализован поиск по названиям компаний и прочему, мы разово получаем весь список компаний в виде массива обьектов в размере 11000 обьектов, поиск реализован на основе material ui, autocomplete
При вводе в инпут вылетают ниже списком найденые варианты, все работает, но работает с задержкой, так как фильтр бежит по всем 11000 обьектам и смотрит совпадения.
Как можно решить проблемму задержки с таким большим обьемом данных?
строить на бэкенде дерево автокомплита, с фронта ходить на бэк за совпадениями по тому,что пользователь ввел прямо сейчас
источник

FA

Fedorchuk Artem in React: русскоязычное сообщество
Юра Чеботаев
Напрямую в API ходить плохая практика
напрямую только раз гет запросом получаем весь список и все
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Желательно, чтобы был сервис синхронизации, который ходит в API, берет оттуда данные и кладет в свою БД. А со своей БД виртуализацию сделать уже раз плюнуть
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
В принципе можно попробовать виртуализацию и в лоб сделать, не знаю поможет ли, но правильный способ я описал: ходить по расписанию в API и собирать данные в свою БД
источник

FA

Fedorchuk Artem in React: русскоязычное сообщество
Michael Uskov
строить на бэкенде дерево автокомплита, с фронта ходить на бэк за совпадениями по тому,что пользователь ввел прямо сейчас
да, это было бы отличное решение
источник

FA

Fedorchuk Artem in React: русскоязычное сообщество
Юра Чеботаев
Желательно, чтобы был сервис синхронизации, который ходит в API, берет оттуда данные и кладет в свою БД. А со своей БД виртуализацию сделать уже раз плюнуть
а есть ссылка на виртуализацию, или как оно конкретно пишется в material?
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Я же скинул
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Вот
источник

FA

Fedorchuk Artem in React: русскоязычное сообщество
спасибо
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Упс.
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Не то скинул )
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
источник

FA

Fedorchuk Artem in React: русскоязычное сообщество
думал лодашем разбивать на чанки и пробовать с ними работать, но так себе думаю тоже идея
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
У них в примере прямо в лоб работает виртуализация
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Попробуйте как там написано сделать
источник

FA

Fedorchuk Artem in React: русскоязычное сообщество
спасибо, сейчас буду пробовать
источник

M

Mike in React: русскоязычное сообщество
а кто нибудь сталкивался в материал юай с тем что локализация не подтягивается?
источник

OJ

Oleg Junior in React: русскоязычное сообщество
а между js и jsx что вообще нет никакой разницы? может редакторы их по разному понимают? а то я поменял один файл на jsx мне иконка в редакторе понравилась🙂 думаю во всем проекте поменять, да вот боюсь вдруг что изменится
источник

GE

Gez Ellig in React: русскоязычное сообщество
Насколько я понимаю, .jsx-файлы - это синтаксический сахар, чтобы нам постоянно не вызывать функцию .createElement.
источник