Если я использую в своем шаблоне угловой компонент, подобный этому:
<my-cmp selectable />
И мой компонент запрашивает в своем конструкторе следующее:
constructor(@Attribute("selectable") selectable: string){};
Тогда selectable
будетпустая строка, как и ожидалось, но когда она используется следующим образом:
<my-cmp [attr.selectable]="true" />
Это правильно поместит атрибут в мой тег в DOM и приведет к следующему:
<my-cmp selectable="true" />
Но в этом случае selectable
всегда будет иметь значение null
, независимо от того, установлено ли оно на construct
или ngOnInit
и его заданного значения (например, false
, "" или что-либо еще, также приведет к null
).
Вопрос здесь: почему?И что еще более важно: как наилучшим образом использовать логические атрибуты в angular?
Примечание: я явно не хочу использовать привязку свойства в этом случае, данный «ввод» долженбыть статичным.