onChange evento no se desencadena cuando el editor de borrador está en el modo readOnly. Quiero mantener el modo readOnly, pero tiene que desencadenar el evento onChange, para que pueda guardar mi trabajo.

             <Editor
                readOnly={true}
                onChange={this.onChange}
                ref={(e) => { this.editor = e; }}
                autoCapitalize="none"
                autoComplete="off"
                autoCorrect="off"
                spellCheck={false}
              />
0
satheesh 4 nov. 2019 a las 07:59

1 respuesta

como se indica a continuación, puede activar sus acciones de guardar en el evento de cambio o desenfoque del editor (pero para el rendimiento, recomiendo desenfoque):

const [editorState, setEditorState] = useState();
const [editable, setEditable]=useState(false);
const editorRef = useRef(null);

const onChange = (editorState) => {
  setEditorState(editorState);
};

const onBlur = (state) => {
   //  convertToRaw from draft-js;
  const contentState = convertToRaw(editorState.getCurrentContent());
  // save contentState      
};

return (
  <Editor
    editorState={editorState}
    readOnly={!editable}
    onChange={onChange}
    onBlur={onBlur}
    ref={editorRef}
    autoCapitalize="none"
    autoComplete="off"
    autoCorrect="off"
    spellCheck={false}
  />
)
1
Eslam Abu Hugair 4 nov. 2019 a las 05:31