ember.js 是否从Ember操作停止单击传播?

lb3vh1jj  于 2022-11-05  发布在  其他
关注(0)|答案(3)|浏览(187)

我有这样的代码,当图标编辑范围被点击时,它触发一个打开模态的动作,然而,同时,点击传播到它下面的视图(personView)。我希望动作执行并停止传播。
我能想到的唯一解决方案是使图标编辑成为自己的视图,并通过在方法click中返回false来停止点击传播。有没有其他方法可以在不创建另一个视图的情况下做到这一点?
哈佛商学院:

{{#view Blocks.PersonView}}
  <span class="inline pull-right icon-edit" {{action 'modalOpen' 'modifyPersonPopup' 'modifyPerson' this}}></span>
  <p class="inline pull-left person-name">{{firstNameDelayed}}</p>
{{/view}}
c3frrgcw

c3frrgcw1#

您也可以将bubbles=false参数添加到action标记中。有关如何配置事件传播的信息,请参见API documentation

mpbci0fu

mpbci0fu2#

尝试修改操作:

modalOpen: function {
    //code of your action
    return false;    
}

在类似的情况下,这对我很有效

nbysray5

nbysray53#

实现这一点的方法是使用ember-event-helpers插件中的stop-propagation助手。

<span class="inline pull-right icon-edit" {{on "click" (stop-propagation (queue this.modalOpen this.modifyPersonPopup this.modifyPerson))}}></span>

相关问题