我有一个多个draft-js
ContentStates
的集合,我想将它们合并在一起,以便在一个<Editor />
中显示。
为什么要这么做? 通过我的GUI,您可以单独编辑文本片段,然后稍后将它们拼接在一起。 然后您将得到结果文本,您仍然可以进行编辑。
我如下持久化每个ContentState
:
const contentState = EditorState.getCurrentContent();
const raw = convertToRaw(contentState);
这会为我提供一个类似下面的对象:
{
blocks: [...],
entityMap: {...}
}
我尝试的是手动合并“blocks”和“entityMap”,得到一个原始的contentState,然后使用“convertFromRaw”进行解析。
然而,每个块都有一个应该是唯一的键,在不同的contentStates中,这些键会重叠并且不是唯一的。
因此,在这种情况下的结果是,一些具有相同键的块被其他块覆盖。
是否有人有更简单的方法来实现我正在做的事情?