gpt4 book ai didi

angular - 用于 KeyCommands 的 @HostListener 不起作用 [Electron,Angular]

转载 作者:行者123 更新时间:2023-12-03 12:42:51 25 4
gpt4 key购买 nike

我对 Electron 和 Angular 还很陌生,正在尝试编写一个小应用程序。在我的应用程序中,我想捕捉一些通用的键盘命令。为了捕捉事件,我编写了一个指令,但无论我做什么,应用程序都不会对任何用户输入使用react。这可能是使用 Angular 和 Electron 的问题,还是我在使用 Angular 时犯了一个简单的错误?

  • 指令在 app-module
  • 中声明
  • 指令附加到特定组件(简单的一页)
  •     import {Directive, HostListener} from '@angular/core';


    @Directive({
    selector: '[appUserinputControl]'
    })

    export class UserinputControlDirective {

    @HostListener('document:keydown', ['$event']) onKeyDown(res) {
    console.log('Key', res);
    }

    constructor() {
    }

    }

    该代码应该将 keydown-events 记录到控制台,但它什么也不做,也不会出现错误。

    最佳答案

    我认为您缺少的一点是您使用了 document.keydown 而不是 window.keydown。

        @HostListener('window:keydown', ['$event'])
    keyEvent(event: KeyboardEvent) {
    console.log(event)
    }

    上面的例子应该可以工作。

    关于angular - 用于 KeyCommands 的 @HostListener 不起作用 [Electron,Angular],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57873866/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com