Что такое template variable? Как ее использовать?
Template variable (переменная шаблона) в Angular - это специальная конструкция, которая позволяет назначить имя элементу DOM или директиве в шаблоне компонента и ссылаться на него внутри шаблона или компонента. Она обеспечивает доступ к этому элементу или директиве и позволяет использовать его свойства и методы.
Давайте рассмотрим, как использовать template variable:
- Создание template variable:
- Template variable создается с помощью символа
#
внутри шаблона компонента. - Вы можете назначить имя переменной, которое будет использоваться для ссылки на элемент или директиву.
- Template variable может быть назначен любому элементу DOM или директиве внутри шаблона компонента.
- Template variable создается с помощью символа
Пример использования template variable с элементом <input>
:
<input #myInput type="text" />
- Использование template variable в шаблоне:
- После создания template variable, вы можете использовать его внутри шаблона компонента для получения доступа к элементу или директиве.
- Template variable может использоваться в связывании данных, обработчиках событий, условных выражениях и других местах в шаблоне.
Пример использования template variable для вывода значения в шаблоне:
<input #myInput type="text" />
<p>Введенное значение: {{ myInput.value }}</p>
- Использование template variable в компоненте:
- Шаблонные переменные также могут быть использованы внутри кода компонента, например, в обработчиках событий или методах.
- Для доступа к template variable в компоненте используется
@ViewChild()
или@ViewChildren()
.
Пример использования template variable в компоненте для обработки события:
import { Component, ViewChild, ElementRef } from '@angular/core'
@Component({
selector: 'app-my-component',
template: `
<input #myInput type="text" />
<button (click)="onButtonClick()">Кнопка</button>
`
})
export class MyComponent {
@ViewChild('myInput') myInput: ElementRef
onButtonClick() {
console.log('Введенное значение:', this.myInput.nativeElement.value)
}
}
В этом примере мы создаем template variable myInput
для элемента <input>
и используем его в обработчике события onButtonClick()
для получения значения введенного текста.
Template variable в Angular предоставляет удобный способ получения доступа к элементам DOM или директивам внутри шаблона и позволяет использовать их в различных контекстах шаблона или компонента.