我制作了一个自定义attr directive
,我将在兄弟姐妹元素中使用它,如:
<div>
<div [customAttrDirective]="'value'">1</div>
<div [customAttrDirective]="'value'">2</div>
<div [customAttrDirective]="'value'">3</div>
<div [customAttrDirective]="'value'">4</div>
</div>
我做了service
来控制我的所有指令。在这里,我想知道我的指令customAttrDirective
的数量。
PS:我不能通过按类名搜索来做到这一点(因为我在指令中添加了类)并且我无法通过按属性(指令名称)搜索来实现,因为角度更改。
修改:将错误的sintax customAttrDirective="'value'"
替换为[customAttrDirective]="'value'"
非常感谢。
答案 0 :(得分:3)
假设您的自定义属性指令的类名是CustomAttrDirective
,在您使用自定义指令的组件中,添加以下内容:
@ViewChildren(CustomAttrDirective) dirs: QueryList<CustomAttrDirective>
然后在生命周期ngAfterViewInit
中,获取变量dirs
的长度。