我正在开发一个angular2项目,在组件(html)中我有这样的结构:
<ul class="nav nav-list" >
<li>
<label class="tree-toggler nav-header">
<i class="fa fa-plus-circle" aria-hidden="true">
</i>Mylabel
</label>
</li>
<ul class="nav nav-list tree">
<label class="groupcompte">
<i class="fa fa-plus-circle" aria-hidden="true">
</i>group_name:
</label>
<ng-container>
<!-- contain of group-->
</ng-container>
</ul>
</ul>
在我的组件(.ts)中,当我尝试下面的代码片段时:在点击时我们认为Mylabel的隐藏内容但没有任何反应
$('label.tree-toggler').click(function () {
$(this).parent().children(' ul.tree').toggle(300);
$(this).find('i').toggleClass('fa-plus-circle fa-minus-circle')
});
$('label.groupcompte').click(function () {
$(this).parent().find('tr.compte_in_groupe').toggle(300);
$(this).find('i').toggleClass('fa-plus-circle fa-minus-circle')
});
我做错了什么?
1 回答
使用带有角度的jQuery不是一个好主意..为什么不在模板中使用元素的click事件并将其与组件中定义的事件处理程序绑定:
检查这一点是为了更好地理解How to perform DOM manipulation in Angular components而不使用jQuery .