Sveltejs Academy · Урок

bind:this для ссылок на элементы DOM

Получайте ссылку на узел DOM для императивного взаимодействия

Урок 4 из 413 шагов

«bind:this для ссылок на элементы DOM» — бесплатный урок Sveltejs Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Sveltejs Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Sveltejs Academy содержит 4 уроков всего.

Получение ссылки на DOM

Используйте bind:this, чтобы получить ссылку на элемент DOM, аналогично useRef в React.

Объявление и привязка

Объявите переменную, а затем привяжите её.

<script>
  let inputEl;
</script>

<input bind:this={inputEl} />

Доступ после монтирования

Ссылка равна null, пока компонент не будет смонтирован. Используйте onMount, чтобы безопасно получить к ней доступ.

<script>
  import { onMount } from "svelte";
  let inputEl;
  onMount(() => inputEl.focus());
</script>

Императивные методы

Вызывайте методы DOM, например focus() и scrollIntoView(), или вызывайте play для воспроизведения медиафайлов.

function play() { audioEl.play(); }

Чтение размеров

Используйте getBoundingClientRect() для измерений. Если вы только что внесли изменения, оберните вызов в tick().

Ссылки на компоненты

bind:this работает и с компонентами Svelte. В переменной хранится экземпляр компонента.

<MyComp bind:this={comp} />

Вызов методов компонента

Методы, экспортированные из компонента с помощью export function, можно вызывать через ссылку.

Несколько элементов

Для списков можно собирать ссылки в массив, но рассмотрите возможность использования действий.

Когда следует избегать

По возможности предпочитайте декларативные привязки и реактивное состояние императивным ссылкам.

Очистка

Ссылка становится равной null, когда элемент размонтируется. Избегайте устаревших ссылок.

Сочетание с действиями

Для повторяющихся шаблонов DOM инкапсулируйте их в действии Svelte вместо использования bind:this.

Быстрая проверка

Когда можно использовать связанный элемент?

Итоги

bind:this предоставляет ссылку на DOM или компонент, доступную начиная с onMount для выполнения императивных операций.

Можно начать бесплатно

Изучай HTML с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
41
Уроки
163

Часто задаваемые вопросы

Урок «bind:this для ссылок на элементы DOM» бесплатный?

Да — полный текст урока «bind:this для ссылок на элементы DOM» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Sveltejs Academy, подпишись на CoddyKit PRO. Курс Sveltejs Academy содержит 4 уроков всего.

Чему я научусь в уроке «bind:this для ссылок на элементы DOM»?

Получайте ссылку на узел DOM для императивного взаимодействия Ты практикуешь Sveltejs Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Sveltejs Academy?

Предыдущий опыт не требуется. Sveltejs Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «bind:this для ссылок на элементы DOM»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Sveltejs Academy?

Да. Каждый урок Sveltejs Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. bind:value для текстовых полей ввода
  2. bind:checked для флажков
  3. bind:group для групп переключателей и флажков
  4. bind:this для ссылок на элементы DOM
← Назад к Sveltejs Academy