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