Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angular是否具有类似于window.addEventListener的功能?_Javascript_Angular_Angular5 - Fatal编程技术网

Javascript Angular是否具有类似于window.addEventListener的功能?

Javascript Angular是否具有类似于window.addEventListener的功能?,javascript,angular,angular5,Javascript,Angular,Angular5,我有一个javascript函数,如下所示 window.addEventListener('message', function(event) { document.getElementById('mytoken').value = JSON.parse(event.data); var token = JSON.parse(event.data); alert('Received

我有一个javascript函数,如下所示

window.addEventListener('message', function(event) {
                document.getElementById('mytoken').value = JSON.parse(event.data);

                var token = JSON.parse(event.data);      

                alert('Received message ' + token.message);
                var mytoken = document.getElementById('mytoken');
                mytoken.value = token.message;
                }, false);
我想在Angular 5中使用这个脚本,当然,我正在尝试为Angular 5找到合适的解决方案。
感谢

在Angular中,您可以在某些组件中使用
HostListener
,例如:

@HostListener('window:message', ['$event'])
onMessage(event) {
  ...
}
有关其他选项,请参见:


使用HostListener装饰程序

就我个人而言,我更喜欢这样做

    import {HostListener, KeyboardEvent} from '@angular/core';

    @Component({...})
    export class MyComponent {

    @HostListener('document:keyup', ['$event'])
    onKeyUp(ev:KeyboardEvent) {
      // do something meaningful with it
      console.log(`The user just pressed ${ev.key}!`);
     }
    }

您可以在角度设置中使用此函数