Reactjs 在React Hooks项目中应用草稿Wysiwyg

Reactjs 在React Hooks项目中应用草稿Wysiwyg,reactjs,react-hooks,draftjs,Reactjs,React Hooks,Draftjs,我试图融入我的项目 我通过以下方式初始化描述: var editorState = EditorState.createEmpty() const [description, setDescription] = React.useState(editorState); <Editor editorState={description} toolbarClassName="toolbarClassName" wrapperClassName="wrapperClas

我试图融入我的项目

我通过以下方式初始化描述:

var editorState = EditorState.createEmpty()
const [description, setDescription] = React.useState(editorState);
<Editor
    editorState={description}
    toolbarClassName="toolbarClassName"
    wrapperClassName="wrapperClassName"
    editorClassName="editorClassName"
    onEditorStateChange={setEditorState}
/>
…我以这种方式应用编辑器:

var editorState = EditorState.createEmpty()
const [description, setDescription] = React.useState(editorState);
<Editor
    editorState={description}
    toolbarClassName="toolbarClassName"
    wrapperClassName="wrapperClassName"
    editorClassName="editorClassName"
    onEditorStateChange={setEditorState}
/>
当我在编辑器上键入时,说明不是我键入的内容,而是这样一个对象:

_immutable: {allowUndo: true,…}
更新1 我还发现当前内容就是我键入的内容。这样访问数据合适吗

_immutable.currentContent.text
更新2 我还试图像这样直接设置编辑器状态,但没有帮助:

onEditorStateChange={setDescription}
我错过了什么?
谢谢

好的,我通过转换成html解决了这个问题

这足以将编辑器状态转换为html

import {stateToHTML} from 'draft-js-export-html';
....

let html = stateToHTML(editorState.getCurrentContent());
当我将html转换回编辑器状态时,我会像中一样应用

这个转换圈解决了这些问题