我在我的Next.js应用程序中使用monaco-editor/react,一切运行良好。我需要处理编辑器的onClick事件,但该事件从未触发。以下是我的代码:
import Editor from "@monaco-editor/react";
import { useRef, useState } from "react";
export default function MyEditor(){
const editorRef = useRef(null);
const [code,setCode]=useState("");
function handleEditorDidMount(editor, monaco) {
editorRef.current = editor;
}
function onChange(e) {
setCode(e);
}
return(<Editor
height="90vh"
defaultLanguage="javascript"
defaultValue="// some comment"
value={code}
onMount={handleEditorDidMount}
onChange={onChange}
onClick={() => {
// this is never called
alert("Clicked");
}}
/>);
}
2条答案
按热度按时间wr98u20j1#
onClick
可以被Editor
包抑制。在这种情况下,也许你可以给予一试。理论上,这种咔嗒声是无法抑制的。
bkkx9g8r2#
这个问题让我太纠结了,到目前为止我还能控制点击事件和按键。因为没有鼠标点击事件,我只是简单地跟踪了点击事件并发出警报,这样用户就不能打开上下文菜单了。谢谢。