最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Do Angular has a similar function like window.addEventListener? - Stack Overflow

programmeradmin1浏览0评论

I have a javascript function like below.

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);

I'd like to use this script in Angular 5, of course, I am trying to find the proper solution for Angular 5. Thanks

I have a javascript function like below.

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);

I'd like to use this script in Angular 5, of course, I am trying to find the proper solution for Angular 5. Thanks

Share Improve this question asked Aug 19, 2018 at 19:12 CHRIS LEECHRIS LEE 7863 gold badges10 silver badges20 bronze badges 1
  • You can use this function in angular – ferhado Commented Aug 19, 2018 at 19:15
Add a comment  | 

2 Answers 2

Reset to default 9

In Angular you can use HostListener in some component like:

@HostListener('window:message', ['$event'])
onMessage(event) {
  ...
}

For alternative options see:

  • How to listen for mousemove event on Document object in Angular

Using the HostListener Decorator

Personally my preferred way of doing it

    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}!`);
     }
    }
发布评论

评论列表(0)

  1. 暂无评论