【发布时间】:2016-02-24 05:32:37
【问题描述】:
我正在处理的项目中有以下模板:
<div class="item row" {{action "expandItem"}}>
{{input type="checkbox" checked=isChecked}}
{{item.name}}
</div>
我遇到的问题是单击复选框不会更改其状态。但是,它确实会触发 expandItem 操作。我希望行为是单击复选框更改isChecked,但单击div 中的其他任何位置会触发expandItem。我怎样才能做到这一点?
编辑:问题Stop click propagation from Ember action 非常接近,但我看到的不同之处在于另一个问题中的子元素正在使用 {{action}} 帮助器,它可以很容易地停止使用 bubbles=false 传播。就我而言,我不一定了解 Ember 的默认输入组件如何使动作冒泡
第二次编辑:我完全重现了我在this JSBin 中看到的行为。您会注意到输入组件和内联 action 助手的行为方式不同。希望这会有所帮助。
【问题讨论】:
-
@DeepakJose - 非常接近,我看到的不同之处在于另一个问题中的子元素使用了
{{action}}帮助器,它可以很容易地用bubbles=false停止传播。就我而言,我不一定了解 Ember 的默认输入组件如何使动作冒泡。 -
试试
{{input type="checkbox" checked=isChecked bubbles=false}} -
@locks,刚试过...没有变化
标签: ember.js