Extjs 键盘映射不适用于 6.5.1 modern

Extjs keymap does not work with 6.5.1 modern

我将 6.5.1 版的 sencha extJs 与现代工具包一起使用,但我遇到了一个问题,即使用键盘映射的键盘事件处理在过去工作正常,现在不再工作了。我不能说从什么时候起它不再起作用,我只知道它在 2020 年 10 月 14 日和该日期之后的某个时间肯定起作用。我将它用作参数,例如在对话框中,如下所示:

   keyMap: {
        ENTER: {
           handler: function (e, view) {
              console.log("ENTER CLICKED");
           }
        }
     }

它不适用于 10 月 14 日的代码库,所以我认为这不是我的代码的问题。我无法解释是什么情况导致它停止工作。

我创建了一个 example sencha fiddle 版本为 6.5.1 的现代工具包,它在其中不起作用,当您将版本更改为经典 6.5.1 时,它可以起作用。

你知道问题出在哪里吗?或者你能帮我让它重新工作吗?

由于对话框容器没有焦点打开,所以没有触发键盘事件。通过设置 focusable 和 tabIndex 或在绘制事件上为其中的任何可聚焦控件设置焦点,使容器获得焦点。

            focusable: true, //required
            tabIndex: 1, //required
            keyMap: {
                A: {//65
                    scope: this,
                    //event: 'keydown',
                    handler: function () {
                        Ext.Msg.alert('key pressed', 'you have pressed a');
                        console.log("a pressed")
                    }
                },
                ENTER: { //13
                    scope: this,
                    //event: 'keypress',
                    handler: function () {
                        Ext.Msg.alert('key pressed', 'you have pressed enter');
                        console.log("enter pressed")
                    }
                }
            }

看看这个 Keymap Fiddle viewer / Editor