#Angular2 我如何计算自定义属性指令的数量?
#Angular2 How i can count numbers of custom attribute directive?
我做了一个自定义 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:我不能通过 class 名称搜索来做到这一点(因为我在指令中添加了 classes)而且我不能通过搜索来做到这一点属性(指令名称)因为 angular 更改。
编辑:将错误的语法 customAttrDirective="'value'"
替换为 [customAttrDirective]="'value'"
非常感谢。
假设您的自定义属性指令的 class 名称是 CustomAttrDirective
,在您使用自定义指令的组件中添加:
@ViewChildren(CustomAttrDirective) dirs: QueryList<CustomAttrDirective>
然后在生命周期ngAfterViewInit
中,获取变量dirs
的长度。
我做了一个自定义 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:我不能通过 class 名称搜索来做到这一点(因为我在指令中添加了 classes)而且我不能通过搜索来做到这一点属性(指令名称)因为 angular 更改。
编辑:将错误的语法 customAttrDirective="'value'"
替换为 [customAttrDirective]="'value'"
非常感谢。
假设您的自定义属性指令的 class 名称是 CustomAttrDirective
,在您使用自定义指令的组件中添加:
@ViewChildren(CustomAttrDirective) dirs: QueryList<CustomAttrDirective>
然后在生命周期ngAfterViewInit
中,获取变量dirs
的长度。