Kentavr16, Блин, в том то и дело что трудно подобрать упрощенный пример, который в полной мере передаст проблему. Да, код отрабатывает, все верно. useEffect это выход.
У меня есть некоторая функция testing проверки в которую я не хочу передавать ни какие аргументы. Я хочу брать их из стороннего стейта (string). И вот получается, что возникает задержка в выполнении, потому что в функции clickToBtn мы обращаемся к функции testing, в которой проверяем стейт string, который не успел "замениться", потому что б**** он должен меняться в одной функции с testing() :
Спасибо, есть ли способ сделать useEffect только при клике на кнопку, чтобы он не отрабатывал сразу. Я нашел решение только через флаг, который объявляется как useRef(false), а при клике на кнопку ставится значение в true.
Teleweb developer, В офисе у каждого менеджера установлена программа 3cx на телефон, звонок осуществляется из самой программы. Когда клиент звонит на номер компании, звонок поступает на симку, а по SIP протоколу непосредственно в прогу (ну типо звонков в вайбере чтоли). В проге там хранится записи звонков, входящие звонки и каналы ( если телефонов у компании много, для сквозной аналитики ).
Teleweb developer, 3CX Phone — софтфон для осуществления звонков по технологии VoIP. Является расширением для системы IP-PBX 3CX. Существуют версии для ОС Microsoft Windows, Android, iPhone, Mac.
nokimaro, спасибо! Только момент еще: у меня в таблице clients есть поле id. И в таблице offers есть поле id. Как их отделить друг от друга? Или можно как-то их заменить на другое значение, например cliend__id и offer__id?
Борис Алексеев, я думаю, что всегда необходимо получать со стороны сервера уже готовый под задачу структурированный ответ JSON, а на стороне клиента выполнять минимальные действия по его видоизменению. Проблем на клиенте (Реакт приложении) в плане загрузки оперативы я не заметил, даже на маломощных компьютерах, да и база пока маленькая на самом деле.
AUser0, можно пример. Для меня это не очевидно, что очень просто. Я не нашел ничего, чтобы сделать так как вы говорите в один джоин. Единственное что приходит на ум, так это сделать запрос к таблице clients, получить данные.
Потом сделать LEFT JOIN запрос где все offers.clientID = clients.id.
То есть получить все поля таблицы offers где будет добавлена колонка id (из clients)
И уже потом в цикле по clients у каждого клиента выдергивать айдишник и искать его среди всех офферов, и формировать нужный ответ.
Вы про это говорите? Или типо можно сделать все одним запросом?
Я переписал код, который больше отражает проблему.
https://codesandbox.io/s/determined-shirley-wcek08...
У меня есть некоторая функция testing проверки в которую я не хочу передавать ни какие аргументы. Я хочу брать их из стороннего стейта (string). И вот получается, что возникает задержка в выполнении, потому что в функции clickToBtn мы обращаемся к функции testing, в которой проверяем стейт string, который не успел "замениться", потому что б**** он должен меняться в одной функции с testing() :
Я уже много чего перепробывал. Должен быть способ проще и лаконичнее, чтобы все работало и не городить костыли.