角度:在窗口上的事件侦听器中引用当前组件

时间:2019-12-09 04:15:01

标签: angular constructor

我在Angular应用程序中有一个具有属性this.prop1的组件,在构造函数中,我在window对象上添加了一个事件侦听器。在其中,我尝试从当前组件中引用this.prop1。所以我的构造函数看起来像这样:

  constructor(private elementRef: ElementRef) {
    window.addEventListener('keydown', function(event) {
      console.log(this.prop1);
    });
  }

这会引发警告,窗口对象没有名为this.prop1的属性,因此我猜想this的回调中的上下文(window的值)。

我想知道的事情:

鉴于上下文为this.prop1,如何在回调中从当前组件中引用window

1 个答案:

答案 0 :(得分:2)

您可以使用如下所示的胖arrow函数:

您可以查看此demo,也许会对您有所帮助!

1. Set up the static website as normal,
2. Add a VPC endpoint for S3,
3. Use a bucket policy to deny all but traffic from your VPC
  

箭头函数本身没有此函数。这个值   使用封闭的词汇范围;箭头功能遵循正常   可变查找规则。所以在寻找这个不是   当前范围内的箭头功能最终会找到   从其封闭范围。