[Перевод] Заметка о хуке useSyncExternalStore

jchwst6a3nwlxlscnmuw5tdhmry.png


Hello, world!

Представляю вашему вниманию перевод этой замечательной статьи.

useSyncExternalStore — это один из хуков, представленных в React 18. Наряду с хуком useInsertionEffect, он считается хуком для библиотек (library hook):

Следующие хуки предназначены для авторов библиотек для глубокой интеграции библиотек в модель React. Как правило, они не используются в коде приложения

В списке изменений React 18 речь также идет о библиотеках:

Добавлен useSyncExternalStore для помощи в интеграции с React библиотек внешних хранилищ (external store libraries)

Я не разрабатываю библиотеки, поэтому не обращал особого внимания на данный хук, пока не увидел этот твит:


dnlibkj73jitdf820p35jtv9jba.png

React SSR — Не делайте так: useState(() => { if (typeof window !== "undefined") { return localStorage.getItem("xyz") } return fallback; })

© Habrahabr.ru