我有一个div,里面有一个按钮,可以最小化div。如果你点击div内的任何其他地方,它将加载有关div的详细信息。但是,如果最小化div,我不想加载细节。这是我的代码:
<div (click)="showDetails(key)" *ngFor="let key of keys">
<button (click)="minimize(key)">Minimize</button>
<span>The rest of the content is here</span>
</div>
当触发最小化时,我想忽略showDetails。
答案 0 :(得分:2)
我现在无法测试它,但您可以尝试的是
(click)="minimize(key, $event)"
在您的组件中
minimize(key, event) {
event.preventDefault();
event.stopPropagation();
}
尝试其中任何一个,看看它是怎么回事!
答案 1 :(得分:2)
您需要做的是通过使用stopPropagation()
html代码:
<div (click)="showDetails(key)" *ngFor="let key of keys">
<button (click)="minimize(key,$event)">Minimize</button>
<span>The rest of the content is here</span>
</div>
ts代码:
minimize(key,event){
event.stopPropagation();
}
答案 2 :(得分:0)
使用 event.stopPropagation() 防止点击事件冒泡DOM。
答案 3 :(得分:0)
我在这里要做的事情很简单,无需创建函数/方法。
<div (click)="showDetails(key)" *ngFor="let key of keys">
<button (click)="$event.stopPropagation()">Minimize</button>
<span>The rest of the content is here</span>
</div>
希望这会有所帮助!