Angular2、HostListener、要素をターゲットにするにはどうすればいいですか? クラスに基づいてターゲットにできますか? 質問する

Angular2、HostListener、要素をターゲットにするにはどうすればいいですか? クラスに基づいてターゲットにできますか? 質問する

Angular2 では、HostListener デコレータ内の要素をターゲットにするにはどうすればよいですか?

@HostListener('dragstart', ['$event'])
    onDragStart(ev:Event) {
        console.log(ev);
    }

@HostListener('document: dragstart', ['$event'])
    onDragStart(ev:Event) {
        console.log(ev);
    }

@HostListener('myElement: dragstart', ['$event'])
    onDragStart(ev:Event) {
        console.log(ev);
    }

@HostListener('myElement.myClass: dragstart', ['$event'])
    onDragStart(ev:Event) {
        console.log(ev);
    }

最初の2つはうまくいきました。私が試した他のものはどれもEXCEPTION: Unsupported event target undefined for event dragstart

では、それをターゲット要素に実装することはできるのでしょうか? 方法は?

ベストアンサー1

@HostListener()windowグローバル イベント ターゲットとして、document、のみをサポートしbody、それ以外の場合はコンポーネント ホスト要素のみをサポートします。

おすすめ記事