Нет. Там где необходимо
получается мой тимлид немного того?
Если есть лишние ре-рендеры, тогда оборачивай то, что нужно. Но например оборачивать каждый метод в useCallback конечно не несет в себе смысла.
под капотом реакта много оптимизаций же, я бы использовал мемоизацию только для сложных компонентов, а не для 2 лишних ререндеров
Эти два лишних ре-рендера бывают разными. Если это какой то список большой, то конечно даже 2 ре-рендера лишних это много.
оптимизации не спасут, если всё написано на правильно)
Я бы не был так критичен) тем более мы ваш код не видим. Возможно это повод обсудить с ним этот момент. Возможно он расскажет вам почему так делает, а вы поделитесь своим мнением
ну ясное дело, я имею ввиду 2 лишних ререндера в довольно большой промежуток времени
кажется что много useCallback и useMemo сделают только хуже, т.к. я уверен что они тоже "не бесплатные"
поэтому, как и писали выше, надо находиться к контексте того что и как написано, а потом уже смотреть как лучше)
Они не бесплатны. И да, много и не к месту сделают хуже. Но разницы вы от этого можете вообще не заметить в зависимости от масштаба
раньше я юзал мемоизацию только тогда, где действительно в компоненте было много ререндеров, когда скролишь например я так понял что тимлиду не нравятся лишние ререндеры впринцепи (видимо постоянно чекает React Dev Tools обновления на странице), + пересоздание функций и переменных когда происходит ренендер, т.е. любая анонимная функция летит в useCallback, даже если в ней вызывается метод который отрабатывает за 0.00001 миллисекунды
Понимаю. Я тоже раньше думал так же) но ререндер это не так страшно. Смотреть дев тулы это хорошо, но всему есть свои пределы. Нет смысла упарываться оптимизациями там, где они нужны. Вообще проблема с тем как часто их использовать довольно холиварна, тк нигде нет четких правил когда это делать надо, а когда нет. Я считаю, что если нет проблем с перформансом, то не важно 1 или 3 раза перерендрился компонент, и не нужно изобретать велосипед
Обсуждают сегодня