Size: a a a

React — русскоговорящее сообщество

2020 October 23

BE

Black Eyes in React — русскоговорящее сообщество
Oleg Rizhkov
Сотня? Уверен?)
Ну гипотетически у модератора точно
источник

OR

Oleg Rizhkov in React — русскоговорящее сообщество
Black Eyes
Ну гипотетически у модератора точно
Если будут у таймера изменения раз в секунду, ничего страшного от 100 точечных ререндеров не случиться.
источник

OR

Oleg Rizhkov in React — русскоговорящее сообщество
Главное, чтоб эти ререндеры были точечные, и твоя страница в новогоднюю ёлку не превращалась.
источник

BE

Black Eyes in React — русскоговорящее сообщество
Oleg Rizhkov
Если будут у таймера изменения раз в секунду, ничего страшного от 100 точечных ререндеров не случиться.
Я про то, что не таймеры в стейт класть, а только дату "сейчас date.now"
что-то у меня русский захромал
источник

OR

Oleg Rizhkov in React — русскоговорящее сообщество
Black Eyes
Я про то, что не таймеры в стейт класть, а только дату "сейчас date.now"
что-то у меня русский захромал
И чего ты этим добьёшься?
источник

BE

Black Eyes in React — русскоговорящее сообщество
Oleg Rizhkov
И чего ты этим добьёшься?
что в state будет не 100 таймеров, а только константа, сейчас
А страница все обновит в итоге
источник

OR

Oleg Rizhkov in React — русскоговорящее сообщество
Black Eyes
что в state будет не 100 таймеров, а только константа, сейчас
А страница все обновит в итоге
Зачем в стейте константа? Знаешь, что такое константа, так?
источник

BE

Black Eyes in React — русскоговорящее сообщество
Oleg Rizhkov
Зачем в стейте константа? Знаешь, что такое константа, так?
Я имею ввиду константа не const
Грубо говоря, все таймеры формируются от одного state.dateTimeNow
источник

OR

Oleg Rizhkov in React — русскоговорящее сообщество
Кекв
источник

BE

Black Eyes in React — русскоговорящее сообщество
Oleg Rizhkov
Кекв
В общем ты что советуешь?
источник

BE

Black Eyes in React — русскоговорящее сообщество
Black Eyes
В общем ты что советуешь?
Типа на каждый таймер сунуть в state? по мне это дичь
Задача же вызвать повторный рендер, его можно вывести меняя любые данные, я вообще в классовом компоненте пустышку делал
this.setState({})
источник

B

Bauer in React — русскоговорящее сообщество
Black Eyes
сколько времени осталось дл закрытия заявки
const [current, setCurrent] = useState(Date.now());

const handleTick = () => setCurrent(current - 1000);

useEffect(() => {
 const timer = setTimeout(handleTick, 1000);

 return () => clearTimeout(timer);
}, []);

render current;
источник

BE

Black Eyes in React — русскоговорящее сообщество
Bauer
const [current, setCurrent] = useState(Date.now());

const handleTick = () => setCurrent(current - 1000);

useEffect(() => {
 const timer = setTimeout(handleTick, 1000);

 return () => clearTimeout(timer);
}, []);

render current;
ну вот я про это же
источник

B

Bauer in React — русскоговорящее сообщество
Black Eyes
ну вот я про это же
если ты хочешь обновить картинку, ты должен обновить стейт
источник

BE

Black Eyes in React — русскоговорящее сообщество
Bauer
если ты хочешь обновить картинку, ты должен обновить стейт
Можно вызвать пустышку же
Ладно мнения совпали. Все конец демагогии пойду запиливать
источник

B

Bauer in React — русскоговорящее сообщество
Black Eyes
Можно вызвать пустышку же
Ладно мнения совпали. Все конец демагогии пойду запиливать
в этом нет смысла,  у тебя вычисляется счетчик либо во процессе рендера, либо берется из состояния (что правильнее, так как не плодит аномалий)
источник

P

Phoenix in React — русскоговорящее сообщество
Иван
Пробуй ещё. Проблема решается корректной настройкой nginx
Просто мне кажется что nginx работает правильно ибо index в котором root я получаю.  А вот статические файлы как js не возвращает.
источник

BE

Black Eyes in React — русскоговорящее сообщество
Bauer
в этом нет смысла,  у тебя вычисляется счетчик либо во процессе рендера, либо берется из состояния (что правильнее, так как не плодит аномалий)
изменения state вызывает полный 100% рендер компонента же
изменения это как знак, что нужно пересчитать. Никаких анамалий тут нет
источник

B

Bauer in React — русскоговорящее сообщество
Black Eyes
изменения state вызывает полный 100% рендер компонента же
изменения это как знак, что нужно пересчитать. Никаких анамалий тут нет
если ты переживаешь за перфоманс, вытащи этот таймер в отдельный компонент, передавая ему только стартовую точку. И тогда на каждый тик будет перерисовываться он один
источник

BE

Black Eyes in React — русскоговорящее сообщество
ага на 100 таймеров на странице
источник