Я хотел бы знать, как избегать того, чтобы мои ul li стали двойным одиноким click. Например
<ul class="top-level-menu">
<li>
<a class="text-light" href="#">Categorias</a>
<ul class="second-level-menu">
<li (click)="irArticulos(dep.Codigo,'dep')" *ngFor="let dep of arrDepartamentos"><a >{{dep.Descripcion}}</a>
<ul class="third-level-menu">
<li (click)="irArticulos(fam.Codigo,'fam')" *ngFor="let fam of dep.ListFamilias"><a >{{fam.Descripcion}}</a></li>
</ul>
</li>
</ul>
</li>
</ul>
Это код моих ul's, и когда я кликаю в нижнем в third-level-menu, он, как который кликают также в li second-level-menu и мне redirecciona в первого не во второго, который, где я кликаю
События в угловом estГЎn доступные tambiГ©n используя переменную $event
. Не deberГ-схватывай злоупотреблять Вашим использованием , но ты можешь подвешивать ее propagaciГіn на событие этой формы.
<ul class="top-level-menu">
<li>
<a class="text-light" href="#">Categorias</a>
<ul class="second-level-menu">
<li (click)="irArticulos($event, dep.Codigo,'dep')" *ngFor="let dep of arrDepartamentos"><a >{{dep.Descripcion}}</a>
<ul class="third-level-menu">
<li (click)="irArticulos($event, fam.Codigo,'fam')" *ngFor="let fam of dep.ListFamilias"><a >{{fam.Descripcion}}</a></li>
</ul>
</li>
</ul>
</li>
</ul>
Потом ты добавляешь один parГЎmetro к так называемому компоненту $event
. Ты можешь менять потом ее ему posiciГіn, я это поместил как первый, чтобы помещать тебе пример. Важное состоит в том, чтобы он совпал с нею posiciГіn $event
в твоем html. ImprovisГ© имена их parГЎmetros, так как я не имею cГіdigo твоего компонента.
irArticulos($event: any, codigo: string, otro: string) {
$event.stopPropagation(); // Para que no se propague a los componentes inferiores
// El resto de tu código
}