【问题标题】:How to stop $broadcast events from PROPAGATING down the scope chain?如何阻止 $broadcast 事件沿作用域链向下传播?
【发布时间】:2015-08-17 14:49:51
【问题描述】:

我见过类似的 questions ,但是它们是通过用 defaultPrevented:yes 标记事件来告诉孩子不要处理事件来处理的。有什么方法可以阻止事件在范围层次结构中向下传播?

我的场景是广播事件的控制器有许多子范围,其中只有第一个子范围需要事件。因此考虑到性能,我试图在第一级本身停止事件传播。场景说明在这个fiddle

这可能吗?

【问题讨论】:

  • 这个答案可能对你有帮助stackoverflow.com/questions/15420765/…
  • @devqon 这是 OP 已经链接到的同一个问题
  • 哎呀,谷歌搜索到快 :)
  • 请显示一些代码,以便我们看到您正在使用什么
  • @charlietfl 在这种情况下代码真的很重要吗?

标签: angularjs


【解决方案1】:

您无法阻止 $broadcast 向下传播子范围。相反,您可以在子控制器侦听器中使用 event.preventDefault() 让他们忽略此广播事件。

【讨论】:

    猜你喜欢
    • 2017-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-05
    • 2011-01-05
    • 1970-01-01
    相关资源
    最近更新 更多