Как стать автором
Обновить

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

Выглядит, безусловно, интересно, но я бы сразу уже шел с библиотекой recoil

recoil работает очень медленно.
1к обновлений занимает на моем ноутбуке 700мс.
Тогда как обновление того же свойства напрямую 8мс, с Object.assign 32мс.

Плюс я бы не сказал, что синглтон требующий на вход уникальные строки на все приложение так уж хорош.
Когда-нибудь люди в современном фронтэнде поймут, что управление состоянием просто не нужно пихать в отображение. И что буковки MVC в древние времена придумали совсем даже не просто так.

То есть всё упрощение достигается за счёт использования глобальных переменных? Ну ок...


Вижу сходу несовместимость с Concurrent mode: код сильно полагается на тот факт, что любой отрендеренный компонент будет когда-нибудь примонтирован и, соответственно, отмонтирован — а это не так. Запросто может оказаться, что код в строках 83-86 никогда не будет выполнен.

Не берусь оценить полезность этой библиотеки, так как хуки на данный момент почти не использую — не нравятся. Но вот возник вопрос по первому примеру. Зачем там понадобилось использовать useMemo()? Никаких сложных вычислений внутри не производится же. Если это было сделано, чтобы каждый раз не создавалась новая ссылка на объект, то для этих целей рекомендуют useRef().

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

Публикации

Истории