【问题标题】:Can Angular use capture rather than bubbling to catch events?Angular 可以使用捕获而不是冒泡来捕获事件吗?
【发布时间】:2018-06-28 23:45:23
【问题描述】:

我不知何故需要捕获方法来捕获触发事件,但模板中的 ($event) 默认情况下以冒泡方法触发。有什么地方可以改吗?

【问题讨论】:

    标签: angular


    【解决方案1】:

    目前这只能通过命令式添加事件处理程序来完成。

    有计划在未来支持它

    【讨论】:

    • 非常感谢,我已经找到了一种解决方法,可以从您的链接中获得灵感。
    • 很高兴听到:)
    • @Liranius,你能分享你的解决方案吗?
    • Angular (5+) 现在支持点击事件的“捕获”吗?
    • 我不这么认为。过去 6 个月我没有与 Angular 合作,也没有密切关注正在发生的事情,但我在 github.com/angular/angular/blob/master/CHANGELOG.md 中找不到任何内容,以上问题仍然存在。
    【解决方案2】:

    一种解决方法是使用简单的方法并在组件的构造函数中添加一个事件侦听器。

    然后添加'true'作为第三个参数来实现事件捕获。

    constructor() {
    
        document.addEventListener('click', (event) => {
    
          console.log(event);
    
        }, true);
    
    }
    

    提示:使用粗箭头函数引用正确的“this”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-04
      • 2014-03-07
      • 1970-01-01
      • 1970-01-01
      • 2011-02-09
      • 1970-01-01
      相关资源
      最近更新 更多