编辑器设置
您可以在实例化编辑器时自定义它。让我们仔细看看设置 BlockNote 编辑器的基本方法和组件。
创建编辑器
通过调用 useCreateBlockNote Hook 创建一个新的 BlockNoteEditor。这会实例化一个新的编辑器及其所需的状态。之后,您可以使用编辑器 API 与编辑器交互,并将其传递给 BlockNoteView 组件。
declare function (
?: ,
?: React.,
): ;该 Hook 接受两个可选参数:
options: 用各种选项配置编辑器。下面列出了一些常用选项,更多选项请参见 编辑器选项。
initialContent- 设置起始内容dictionary- 用于本地化的文本字符串定制。详见 本地化。schema- 添加自定义块和样式。详见 自定义 Schema。uploadFile- 处理文件上传到后端。pasteHandler- 处理剪贴板内容的粘贴解析。
deps: React 依赖数组,决定何时重新创建编辑器。
手动创建编辑器(
BlockNoteEditor.create)useCreateBlockNote Hook 其实是对 BlockNoteEditor.create 方法的一个简单的 useMemo 包装。如果您想手动控制编辑器生命周期,可以直接使用该方法。例如,我们在 保存与加载示例 中使用此方法来延迟编辑器创建,直到从外部数据源获取到内容。
渲染编辑器
使用 <BlockNoteView> 组件来渲染您刚创建的 BlockNoteEditor 实例:
const editor = useCreateBlockNote();
return <BlockNoteView editor={editor} />;<BlockNoteView> 组件有许多可用属性供您自定义编辑器。更多信息请参见 React 概览。以下是一些重要属性:
editor:要渲染的BlockNoteEditor实例。editable:编辑器是否可编辑。onChange:编辑器内容(文档)变化时触发的回调。onSelectionChange:编辑器选区变化时触发的回调。theme:编辑器主题,详见 主题。