Hay un evento onChange , pero también se activa cuando se mueve el carrito o se presiona el botón de navegación (flechas, etc.).
Quiero detectar si el contenido fue cambiado. Básicamente, necesito detectar esto solo una vez cuando ocurre el primer cambio. La forma tonta de "comparar contenido" puede funcionar aquí, pero esto es un anti-patrón porque esta tarea es demasiado costosa en recursos.
Dado que Draft usa una estructura de datos inmutable, no tiene que ser tan pesado en recursos; comparar referencias debería ser suficiente:
onChange(newEditorState) { const currentContent = this.state.editorState.getCurrentContent() const newContent = newEditorState.getCurrentContent() if (currentContent !== newContent) { // Content has changed } }