toggleBlockType прерывание возврата из другого блока - PullRequest
0 голосов
/ 09 мая 2019

У меня есть следующие настройки:

const [editorState, setEditorState] = React.useState<EditorState>(RichUtils.toggleBlockType(EditorState.createWithContent(blocks, decorator), style))
    const estate = RichUtils.getCurrentBlockType(editorState)
    if (estate !== style)
       setEditorState(RichUtils.toggleBlockType(editorState, style))

return <>
    <div onClick={() => {
        editorRef.current!.focus()
    }}>
        <Editor
            ref={editorRef}
            editorState={editorState} onChange={(newState) => {
                if (isPreviewMode) {
                    return;
                }
               const nextStyle = RichUtils.getCurrentBlockType(newState)
                if (nextStyle !== style)
                   newState = RichUtils.toggleBlockType(newState, style)
                const newRaw = convertToRaw(newState.getCurrentContent())


   setEditorState(newState)
                }} />

Идея состоит в том, что типом блока всегда должен быть тот тип блока, который мне нужен (т. Е. Header-one, абзац и т. Д.), Поэтому он переключится на нужный тип блока, если изменит его.

Проблема в том, что если у меня есть текст на двух блоках, например:

abc 
123

Если я пытаюсь вернуться на 123 после abc, курсор застревает на первой пустой строке abc.

...