use-monaco:React 中使用 monaco-editor 的 hooks 库
提供一组 React hooks,在任意 React 应用中接入 monaco-editor,无需 webpack 插件或 AMD 加载器。
use-monaco 是一组简洁的 React hooks,用于在任意 React 应用中使用 monaco-editor,无需 webpack 插件或 AMD 加载器即可完整支持 monaco web-workers,并提供简便的 worker API。它是无头(headless)的纯 hooks 库:渲染方式自定(单个 div),加载状态由 useMonacoEditor 和 useMonaco 的 loading 属性返回,也可直接操作 monaco API、editor 实例与 text model 实例。主要 hooks 包括:useMonacoEditor(组合下面三个 hook 的单一入口)、useMonaco(提供 monaco 命名空间,扩展 monaco.worker 与 monaco.plugins API,内置 prettier、typings、graphql 插件,并对 CDN 加载去重)、useEditor(创建编辑器并返回 containerRef,支持多编辑器与受控/非受控模式)、useTextModel(按路径创建与管理模型)。README 明确说明该库适配 monaco-editor v0.21.2,尚未更新到更新版本。可通过 yarn/npm 安装,或在支持 ESM 的浏览器中从 CDN 直接使用。