declarando una propiedad en constructor con typecript react
A partir de la documentación de draft-js, uno puede (en vainilla React, sin mecanografiado) configurar el entorno de Draft-js de este modo, notando que elonChange
La propiedad se puede declarar directamente en el constructor:
import React from 'react';
import ReactDOM from 'react-dom';
import {Editor, EditorState} from 'draft-js';
class MyEditor extends React.Component {
constructor(props) {
super(props);
this.state = {editorState: EditorState.createEmpty()};
this.onChange = (editorState) => this.setState({editorState});
}
render() {
const {editorState} = this.state;
return <Editor editorState={editorState} onChange={this.onChange} />;
}
}
Sin embargo, cuando intento hacer lo mismo con Typecript / React (código a continuación), aparece este error
error TS2339: la propiedad 'onChange' no existe en el tipo 'Main'.
class Main extends React.Component<MainProps, MainState> {
constructor(props) {
super(props);
this.state = { todos: [], editorState: EditorState.createEmpty() };
this.onChange = (editorState) => this.setState({ editorState });
}
También intenté agregaronChange
como una propiedad de los accesorios
interface MainProps {
model: Model;
onChange: Function;
}
¿Cuál es la forma apropiada de declarar dicha propiedad de función en mecanografiado / reaccionar?