В чем разница между префиксом ref и # в переменной ссылки шаблона (Angular 2)
Я хочу понять разницу между обозначениями ссылочных переменных шаблона, как указано ниже в полях ввода текста.
<input type="text" name='name' #name [(ngModel)]='model'>
<input type="text" name='name' ref-name [(ngModel)]='model'>
В чем разница между использованием #name и ref-name.
Изменяется ли область действия переменной при использовании ref-name ?
Может ли кто-нибудь предложить наилучшую практику и причину ?
3 ответа:
Это два разных синтаксиса для буквально одного и того же.
Вы можете думать об этом так: некоторым людям (и редакторам) не нравится новый синтаксис "#variable", поэтому Angular предоставляет возможность использовать точно такую же функциональность, используя более "приятный" синтаксис.
Template reference variable is a variable using which we can access DOM properties.Используя ссылочную переменную шаблона, мы получаем доступ к значениям свойств элемента DOM. Ссылочная переменная шаблона объявляется с помощью # и ref-в качестве префикса, например,
#itemиref-item.Пример: ссылочная переменная шаблона с использованием входного текстового поля
<input type="text" #name placeholder="Enter your name" />Здесь
#name- ссылочная переменная шаблона, чтобы получить свойства DOM, мы следуем
name.placeholderэто дает "заполнитель нашего текстового поля", если мы указали.
name.valueэто дает нам "ценность" наше текстовое поле.Вот мой пример, который я создал.
name.typeэто дает нам "тип" нашего текстового поля.HTML-страница
Вывод
Вы можете сделать то же самое с
ref-nameопорная переменная.
Ссылочная переменная шаблона-это переменная, с помощью которой мы можем получить доступ к свойствам DOM. Ссылочная переменная ссылается на присоединенный к ней элемент, компонент или директиву. Он может быть доступен в любом месте всего шаблона.
<input type="text" name='name' #name [(ngModel)]='model'>#name объявляет переменную name для элемента. Ссылка #... теперь всегда означает ref-. Используйте # или ref-вне *ngFor. И вы можете сослаться на следующий URL: http://www.concretepage.com/angular-2/angular-2-template-reference-variable-example

