169 похожих чатов

Всем привет. Скажите, будет ли вызываться useEffectOnce при каждом изменении

props? И можно ли обойтись без состояния?

10 ответов

19 просмотров

из названия думаю будет вызываться только на маунт и не будет вызываться на изменение props. Текущий код у тебя не вызовет дестрой, так как controller в колбеке всегда будет null У меня к тебе встречный вопрос, зачем нужен useEffectOnce когда есть useEffect с deps [], тем более судя потому что ты новичок, кажется не лучшая идея юзать какие-то библиотеки не разобравшить с обычным useEffect Второй код выглядит лучше, только тебе в useMemo не нужен этот if

Лёша-Рубцов Автор вопроса
Maksim Odorodko
из названия думаю будет вызываться только на маунт...

Думаю, если сделать useEffect с deps [controller], то будет рекурсия, так как внутри useEffect устанавливается новое значение controller

Лёша-Рубцов Автор вопроса
Maksim Odorodko
из названия думаю будет вызываться только на маунт...

Разве первый вызов useMemo не подразумевает, что controller не имеет значения?

ну тебе надо понять когда ты хочешь вызывать render() если один раз за маунт, то второй вариант твой норм без лишнего if в useMemo и с deps [controller]

ну да, так зачем ты тогда пытаешься его задестроить в useMemo, раз его еще нет) правильней дестроить в эффекте

Лёша-Рубцов Автор вопроса
Maksim Odorodko
ну да, так зачем ты тогда пытаешься его задестроит...

Как раз наоборот, не дестроится, если нету

Лёша-Рубцов Автор вопроса
Maksim Odorodko
ну тебе надо понять когда ты хочешь вызывать rende...

Библу я сам написал🗿, так что знаю, что render нужно вызывать при любом изменении props, а destroy при изменении props.name и анмоунт

Лёша Рубцов
Библу я сам написал🗿, так что знаю, что render нуж...

ну да, я это понял, но тебе не нужен тогда if в useMemo все равно и вместо deps [props] тебе нужен react.memo и прям в компоненте вычислять в рендере без хука ну а для [props.name] создай еще один эффект просто и там дестрой

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта