我在Ember中有一个标签组件(类似于Bootstrap的标签),每个标签都可以点击,但标签旁边还有一个刷新按钮。我遇到的问题是,每当我单击刷新按钮以触发refresh
操作时,也会触发switchTab
操作以打开选项卡,因为它们是嵌套的。由于动作对彼此不了解,你如何触发正确的动作(或取消不正确的动作?)
<li class="tab" {{action 'switchTab' tab}}>
<span {{action 'refresh' tab}}>Refresh </span>
Bubble Bobble Tab
</li>
一个选项是将标签分隔到自己的范围内并将switchTab
放在该元素上,但这意味着只有标签可点击(没有更多的css),这是一个糟糕的用户体验
答案 0 :(得分:2)
@Samuel,如果您不希望操作向上冒泡,可以在操作助手中使用bubbles=false
。例如,
<li class="tab" {{action 'switchTab'}}> <span {{action 'refresh' bubbles=false}}>Refresh </span> Bubble Bobble Tab </li>