Обновить

Комментарии 7

В планах полный переход на функциональные компоненты? Уже почти 26 год, а вы до сих пор классовыми компонентами пользуетесь? Ну тут даже сказать нечего...

Тоже это заметил.

React работает банально - рискует DOMHTML по заданным данным. Если вы не запустили рендер то и не нарисует. А не потому что изменяемые или не изменяемые

В реакт нет механизма запуска рендера без изменения состояния или пропсов.

В JS есть замечательный механизм Reflection, который позволяет отслеживать любые изменения объектов. Интересно, почему React его не использует под капотом?

Есть библиотеки которые могут помочь (в зависимости от задачи), тот же Zustand, immutable.js, и другие. Ещё официальная документация объясняет эти же принципы довольно хорошо, применимо к функциональным компонентам https://react.dev/reference/eslint-plugin-react-hooks/lints/immutability

@Alek_Che А вас в первом примере смущает только мутирование данных? То, что там три вложенных итерации со сложностью size(fieldsRef) * size(hierarchy.ref) * size(fields) - не смущает?

Можно не перебирать поэлементно коллекцию fields, а хранить в Object или Map с ключом name, и получать нужный field за константное время (и ведь fields уже лежит в объекте в формате key-value, осталось только сделать правильный key, ну или не менять формат хранения, а за один проход по fields построить индекс по name).

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
modusbi.ru
Дата регистрации
Дата основания
Численность
51–100 человек
Местоположение
Россия