3 / 3 / 1
Регистрация: 20.02.2018
Сообщений: 126
|
||||||
1 | ||||||
Асинхронный useState30.06.2022, 10:32. Показов 1910. Ответов 9
Метки нет (Все метки)
Здравствуйте!!!
У меня вопрос в связи с тем что useState асинхронный. Например я хочу задизаблить кнопку дождаться выполнения запросов и раздизеблить кнопку сделав редирект. Хочу узнать можно ли как в коде делать или лучше по-другому т к нет гарантии установки стейта?
0
|
30.06.2022, 10:32 | |
Ответы с готовыми решениями:
9
UseState и UseEffect Изменение состояния useState Проблема с асинхронностью useState React useState поменять местами элементы массива |
3 / 3 / 1
Регистрация: 20.02.2018
Сообщений: 126
|
|
30.06.2022, 11:31 [ТС] | 3 |
И что получается делать? какие варианты?
0
|
3 / 3 / 1
Регистрация: 20.02.2018
Сообщений: 126
|
||||||
30.06.2022, 13:38 [ТС] | 5 | |||||
Т е так? юзэффект он запустит setIsDisabled(false); как только изменится isRequest и тогда условие в тернарнике точно сработает?
0
|
молодой
|
|||||||||||||||||||||
30.06.2022, 14:21 | 7 | ||||||||||||||||||||
Для начала объясните Ваш алгоритм, судя по этому нужно сделать ожидания выполнения запроса
Но вот тут не совсем понятно
зачем если нет ни return ни присваивания
Да еще Вы забыли свою функцию сделать асинхронной, аwait в ней в лучшем случае не сработает
0
|
3 / 3 / 1
Регистрация: 20.02.2018
Сообщений: 126
|
|
30.06.2022, 14:34 [ТС] | 8 |
Похоже я перегрелся и действительно зачем я к этому дизаблу и тернарнику прицепился.
Логика у меня такая я дизаблю кнопку пока идут запросы и если они успешны редирекчу, а если ошибка я снимаю дизабл и человек заново жмет кнопку.
0
|
молодой
|
||||||
30.06.2022, 14:36 | 9 | |||||
Сообщение было отмечено riddlejs как решение
Решение
добавил try catch
1
|
1 / 1 / 0
Регистрация: 28.08.2022
Сообщений: 5
|
||||||
29.08.2022, 20:44 | 10 | |||||
Можно с помощью реф
0
|
29.08.2022, 20:44 | |
29.08.2022, 20:44 | |
Помогаю со студенческими работами здесь
10
useState initial state или useEffect Асинхронный запрос Типизация хука useState Где можно посмотреть как имплементятся сетеры, возвращаемые useState() Асинхронный system() Асинхронный вызов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |