в профайлере пишет, что компонент был перерендерен, потому что родитель был перерендерен. Почему так? Разве React.memo не должен полагаться только на props shallow equal? При чём тут родитель?
если в дочерний передаешь колбэки типа handleClkBtn, то они при перерендере родителя изменяться (ссылка которую ты в пропс передаешь), и React.memo посчтитает это изменение пропсов. Вот и перерендер. Что бы такого не было handleClkBtn нужно заворачивать в useCalback
да да, про это в курсе, всё обёрнуто))) До этого не было, и профайлер ожидаемо выдавал инфу по этому
Ну где-то касяк, пропсы меняються, иначе бы перерндера не было.
Еще есть дурацкий strict mode который любит перерендеривать все по 2 раза, может он там буянит?
хм хм хм... Я даже не знаю есть ли он у меня)))))
Ты по моему с директивой 'use strict' путаешь. Однако в реакте есть еще <React.StrictMode> это собственная фича реакта. Вот она любит делать доплнительные перендеры компонентов для проверки.
ооо, это ещё и разные вещи оказывается
Обсуждают сегодня