useContext и значение в функции12.01.2021, 18:24. Показов 910. Ответов 8
Метки нет (Все метки)
Выдумал сам себе задачу. Запускается приложение и в стейт добавляются с некоторым интерваломю Сделал примерно такой код
После добавления - в консоли там где вне функции run число увеличивается - в консоли там где внутри функции run число остается как при первом запуске - в pre список объектов обновляется как сделать так, чтобы и в функции run был актуальный стейт? Что я упустил?
0
|
||||||
| 12.01.2021, 18:24 | |
|
Ответы с готовыми решениями:
8
Вычислить значение функции (значение переменной Х передается в качестве параметра функции) |
|
the hardway first
2475 / 1847 / 910
Регистрация: 05.06.2015
Сообщений: 3,610
|
||
| 12.01.2021, 21:16 | ||
|
Посмотреть бы что вы передаёте в
<AppContext.Provider value={???}/>.Ваш функциональный компонент содержит состояние, в таком виде как у вас это недопустимо. И
0
|
||
| 12.01.2021, 23:28 [ТС] | ||||||
|
Вот собрал минимально необходимый (он же на codesandbox)
Кроме того "легенда" ситуации такая. Добавляем в приложение самостоятельный компонент обладающий неким внутренним функционалом совершенно который не нужен "снаружи", но тем не менее способный оказывать влияние на стейт приложения (в дозволенных пределах конечно же)
0
|
||||||
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
|
| 13.01.2021, 07:07 | |
|
voral, добавьте console.log(index) в run и app, может, натолкнет на мысль.
0
|
|
| 13.01.2021, 09:41 [ТС] | |
|
Эта мысль у меня уже в голове. Но тут путаница возникает как раз у меня в голове.
Изначально мысль была, что из за того что происходит повторный рендер апп - то мы оказываемся внутри уже другого объекта, и получатся функция run крутится внутри другого окружения, которое уже "потеряно". Но с другой стороны, useEffect срабатывает только один раз... Т.е. в любом случае функция run получается крутится в состоянии на момент ее запуска из useEffect. Это связано именно с реактом или я в JS что то упускаю? И вообще в данной ситуации возможно сделать так что app был актуальным?
0
|
|
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
||
| 13.01.2021, 09:55 | ||
|
0
|
||
| 13.01.2021, 10:00 [ТС] | |
|
Ясно. т.е. по большому счету, если возвращаться к "задаче" эти эмуляции изменений лучше выполнять в AppState? (они собственно нужны только на некоторое время разработки). Т.е. если обобщить в том же компоненте со стейтом которого и работаем. Правда если стейт этот является объектом, а не скаляром. Так?
0
|
|
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
|||||||
| 13.01.2021, 10:14 | |||||||
0
|
|||||||
| 13.01.2021, 17:55 [ТС] | ||||||
|
Решил свою "задачу" создав специальный компонент Test для этого. Cо своим локальным стейтом (по сути нужен только для ограничения числа генераций). Это же код на кодесандбокс
0
|
||||||
| 13.01.2021, 17:55 | |
|
Помогаю со студенческими работами здесь
9
Вычислить минимальное по абсолютной величине значение функции и соответствующее значение аргумента Вычислить минимальное значение функции и соответствующее значение аргумента x в заданном интервале Найти не только минимальное значение функции, но и соответствующее ему значение аргумента
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|