在 react-codemirror 中自定义快捷键绑定
原文由 Ellie Huxtable 于 发布,订阅该博客
我目前在一个项目中使用 uiwjs/react-codemirror,需要为 Cmd+Enter 添加自定义绑定。
文档里并没有完全讲到我需要的用法,不过通过下面的方法就可以绑定自定义按键:
import React from 'react';
import CodeMirror from '@uiw/react-codemirror';
import { keymap } from '@codemirror/view';
import { defaultKeymap } from '@codemirror/commands';
const MyCodeEditor = () => {
const handleCmdEnter = React.useCallback((view) => {
console.log('Cmd+Enter pressed!');
return true;
}, []);
const customKeymap = keymap.of([
{
key: 'Mod-Enter',
run: handleCmdEnter,
},
]);
return (
<CodeMirror
value="code and stuff"
extensions={[customKeymap]}
/>
);
};
export default MyCodeEditor;请注意,你可能需要确保 keymap 扩展排在其他扩展之前,否则它可能会过早地被处理。---
随机一篇博客
评论
登录后参与讨论