Я хотел бы условно применить атрибут title к элементу, что я пытаюсь сделать так:
<div class = "option-title" [attr.title] = "isTitleTruncated() ? option.title : null">
{{option.title}}
</div>
Но я хотел бы передать ссылку на элемент на мою функцию, используемую в условии, но я не смог этого сделать. Я пробовал использовать this
, и это дает мне экземпляр компонента, но мне нужен сам div
. Это возможно?
Попробуйте использовать ссылочную переменную шаблона, например:
<div ... #divRef [attr.title] = "isTitleTruncated(divRef) ? option.title : null">
Вы должны создать ссылочную переменную шаблона на элементе, которая выглядит как #myDiv
, а затем передать ее функции.
<div class = "option-title" #myDiv [attr.title] = "isTitleTruncated(myDiv) ? option.title : null">
{{option.title}}
</div>
что такое тип myDiv? он просто выводит разметку в console.info, если я поставлю тип any
, чтобы проверить его, поэтому неясно, какой это тип данных. Мне нужно поменять класс CSS на выбранный элемент.
Спасибо, это сработало, хотя сейчас у меня обнаружена ошибка обнаружения изменений, о которой я отправлю отдельный вопрос.