我必须使用id attr吗?

时间:2017-03-31 00:37:00

标签: html css angular

在角度2中,当我想要为特定组件设置样式时,我使用以下内容:

<div #mask id="mask" class="col-xs-12 some-generi-ccss-class"></div>

// in .css
#mask{
  height: 50px;
}

在我看来,它似乎是一个双重句柄,用于定义要用于样式的id(id="mask")和用于#mask的ng2选择器字符串(@ViewChild('mask'))我的component.ts代表了一个元素。

我是否能够删除其中一个属性但仍能实现这两个功能?或者是这个样板?

2 个答案:

答案 0 :(得分:0)

答案是否定的是:

因为它看起来一样但两者都不同:

div元素中的

#mask显示template variable,因此您可以在templatecomponent内访问它,这是角度2的一部分

id="mask"html's默认属性

虽然如果你想在不使用#mask的情况下访问div,可以使用via document.getElementById('mask')如果您不想从模板端访问它,请删除#mask。

答案 1 :(得分:0)

#mask与样式无关,与“id”无关 它只允许您使用<div>@ViewChild(...)@ContentChild(...)@ViewChildren(...))来引用模板中其他位置的@ContentChildren(...)

请参阅stackoverflow.com/questions/32693061 / ...以了解模板变量的用途。