如何将块数据加载到 EditorJS 中?

问题描述

我想将块数据动态加载到我的 EditorJS 实例。 我想做这样的事情:

const editor = new EditorJS();
editor.load({ blocks: my_blocks })

我似乎没有在 https://editorjs.io/

上找到任何有关如何执行此操作的文档

我知道我可以在初始化期间将块加载到 EditorJS,但是我需要在按钮点击时加载动态数据。

解决方法

您可以通过 insert() 方法使用 Blocks Core API,使用以下签名:

 insert(type?: string,data?: BlockToolData,config?: ToolConfig,index?: number,needToFocus?: boolean): void

因此,就您而言,可能是:

editor.blocks.insert('header',{text: 'My header'});

其中 header类型,第二个参数是块 data

更简洁的方法是按如下方式预定义块:

const blockToAdd = {
  type: 'header',data: {
     text: 'My header'
  }
};

editor.blocks.insert(blockToAdd);