Что вы видите там:
_ngcontent-c0
Это Angulars способ создания DOM. Они вводят эти атрибуты по разным причинам, одна из них, например, для стилей в компонентной области.
.pane[_ngcontent-c0]
<- это селектор CSS. Каждое CSS-правило в таблице стилей comonents относится к нему.
Это происходит при предварительной обработке. </p>
Очень мало читаемых человеком документов, это лучшее, что я смог найти:
https://medium.com/claritydesignsystem/ng-content-the-hidden-docs-96a29d70d11b
Вы не должны иметь на это никакого влияния, но CLI также не должен ничего молча резать.
Скорее CLI, вероятно, остановит компиляцию из-за синтаксической ошибки шаблона.
Создавая компонент, вы создаете собственные теги HTML (вроде). Я имею в виду <app-component>
и тому подобное. Они являются корнем области действия компонента для элементов DOM (опять же, не на 100%, это больше для визуализации).
Если вы хотите создать пользовательские атрибуты, есть несколько способов:
Это способ управления атрибутами HTML в Angular (и не только для пользовательских)
Это добавляет или удаляет атрибут из элемента
<input [attr.disabled]="!value ? null : '' "
Результатом будет <input disabled=''>
, что совпадает с <input disabled>
. В случае, если у нас есть значение, это будет просто <input>
.
И при использовании синтаксиса [attr.
я думаю, что нет никаких ограничений на имена, которые вы можете использовать, кроме того, что разрешено Angular.
Сделать data-attributes
:
<div [attr.data-attr-test]=" 'Foo' ">
И просто используя значение из компонента:
<img [src]="value">
Существуют также директивы, которые размещаются как атрибуты, но используются для манипулирования DOM и изменения поведения:
https://angular.io/guide/attribute-directives