preconnect¶
Canary
Функция preconnect в настоящее время доступна только в каналах React Canary и experimental. Подробнее о каналах выпуска React здесь.
preconnect позволяет вам заранее подключаться к серверу, с которого вы ожидаете загрузки ресурсов.
1 | |
Описание¶
preconnect(href)¶
Чтобы предварительно подключиться к хосту, вызовите функцию preconnect из react-dom.
1 2 3 4 5 6 | |
Функция preconnect дает браузеру подсказку, что ему следует открыть соединение с данным сервером. Если браузер решит это сделать, это может ускорить загрузку ресурсов с данного сервера.
Параметры
href: строка. URL-адрес сервера, к которому вы хотите подключиться.
Возвращаемое значение
preconnect ничего не возвращает.
Ограничения
- Несколько вызовов
preconnectс одним и тем же сервером имеют тот же эффект, что и один вызов. - В браузере вы можете вызвать
preconnectв любой ситуации: при рендеринге компонента, в эффекте, в обработчике события и так далее. - При рендеринге на стороне сервера или при рендеринге серверных компонентов
preconnectимеет эффект, только если вы вызываете его во время рендеринга компонента или в асинхронном контексте, возникающем при рендеринге компонента. Любые другие вызовы будут проигнорированы. - Если вы знаете, какие именно ресурсы вам понадобятся, вы можете вызвать вместо этого другие функции, которые сразу же начнут загрузку ресурсов.
- Нет никакой пользы от предварительного подключения к тому же серверу, на котором размещена сама веб-страница, поскольку к моменту получения подсказки он уже будет подключен.
Использование¶
Предварительное подключение при рендеринге¶
Вызовите preconnect при рендеринге компонента, если вы знаете, что его дочерние компоненты будут загружать внешние ресурсы с этого хоста.
1 2 3 4 5 6 | |
Предварительное подключение в обработчике события¶
Вызовите preconnect в обработчике события перед переходом на страницу или состояние, где потребуются внешние ресурсы. Это позволит запустить процесс раньше, чем если бы вы вызвали его во время рендеринга новой страницы или состояния.
1 2 3 4 5 6 7 8 9 | |
Источник — https://react.dev/reference/react-dom/preconnect