Size: a a a

React: русскоязычное сообщество

2020 February 02

T

The Fallen Phoenix in React: русскоязычное сообщество
А можно вопрос текстом сформулировать?
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
В set state можно передавать не новое состояние, а функциональное преобразование старого.
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
В виде функции
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Например
const makeDub = React.useCallback((index) => setState(rows => [ ...rows.slice(0,index), ...rows.slice(index) ]), [ setState ])
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
В результате получится функция makeDup, которая не будет пересоздаваться каждый новый ререндеринг, поскольку она зависит только от setState
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
А она не меняется при ререндеринге.
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
The Fallen Phoenix
А можно вопрос текстом сформулировать?
Если ответ не удовлетворил, то вот.
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
const addRow = React.useCallback((row) => setState(rows => [ ...rows.slice(), row ]), [ setState ])
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Если не использовать useCallback, то для простого сайта ещё пойдет, а для более менее серьезного сайта-приложения, чтобы он не тормозил, будьте добры топовый игровой комп приобретать.
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Это я сразу ответил на возможные "А у меня и без useCallback все работает"
источник

DV

Dmitry Vndrsn in React: русскоязычное сообщество
The Fallen Phoenix
const addRow = React.useCallback((row) => setState(rows => [ ...rows.slice(), row ]), [ setState ])
реакт же гарантирует неизменяемость этих функций, зачем его в зависимости
источник
2020 February 03

T

The Fallen Phoenix in React: русскоязычное сообщество
Dmitry Vndrsn
реакт же гарантирует неизменяемость этих функций, зачем его в зависимости
Принцип указания избыточных зависимостей. Идея в том, чтобы не думать о том, что добавлять, а что нет в этот массив. Ибо сравнение происходит по указателю и выполняется за пренебрежительно малое время
источник

DV

Dmitry Vndrsn in React: русскоязычное сообщество
The Fallen Phoenix
Принцип указания избыточных зависимостей. Идея в том, чтобы не думать о том, что добавлять, а что нет в этот массив. Ибо сравнение происходит по указателю и выполняется за пренебрежительно малое время
чивооо?
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Матчасть от первой инстанции
источник

DV

Dmitry Vndrsn in React: русскоязычное сообщество
источник

DV

Dmitry Vndrsn in React: русскоязычное сообщество
The Fallen Phoenix
Матчасть от первой инстанции
не надо вот корчить тут из себя
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Оно понятно
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Про эту гарантию я тоже написал
источник