如何禁用摩纳哥上下文菜单?

How to disable Monaco context menu?

我正在使用 monaco-editor,并尝试为 Command+Enter 添加自定义处理程序。但是当我按下命令键时,会出现摩纳哥上下文菜单。是否可以禁用上下文菜单,或将其重新绑定到另一个键?

当然,您可以禁用它,只需将 contextmenu 设置为 false ;)

monaco.editor.create(document.getElementById("container"), {
  value: "function hello() {\n\talert('Hello world!');\n}",
  language: "javascript",
  // ---------
  contextmenu: false, // or set another keyCode here
});

或者,(感谢@razor8088)

monaco.editor.updateOptions({ contextmenu: false });

有两种方法可以禁用上下文菜单。 您可以在创建编辑器时定义的一个。这类似于 webdeb 给出的答案。 但是如果在运行时你想enable/disable上下文菜单,你可以使用下面的函数。

monaco.editor.updateOptions({
   contextmenu: false;
});

正确的代码是:

monaco.editor.updateOptions({ contextmenu: false });

false后面的分号抛出错误。