Estoy atascado con un problema nativo de reacción: tengo mi componente con un (supuesto) constructor válido, pero no puedo acceder a this.props
En mi código:
//In another file interface mainFunction { loaded: () => void, disconnect: () => void } interface disconnect { mainExport:mainFunction } class Disconnect extends Component<disconnect> { constructor(props:any) { super(props); console.log(props) } test() { console.log("Disconnect..."); console.log(this.props); } render() { return ( //Some react render ); } export default Disconnect;Cuando consuelo log props en mi constructor, hay funciones que le doy a este componente, pero en mi función de prueba this.props no está definida... Intento establecer this.props = props en el constructor por props es una propiedad de solo lectura (Uso TypeScript) ¿Qué hice mal?
EDITAR ____ Intento: crear un nuevo atributo para almacenar mi función:
class Disconnect extends Component<disconnect> { disconnect:any constructor(props:any) { super(props); console.log(this.props.mainExport.disconnect) this.disconnect = this.props.mainExport.disconnect } }Pero this.disconnect no es variable en mi otra función
Intento enlazar mi función de prueba en el constructor pero tampoco funciona...
RESPUESTA _____ Bueno, entonces @Chris obtuvo la respuesta: necesito convertir mi método de prueba en una variable:
//Old test() { console.log("Disconnect..."); console.log(this.disconnect_func); console.log(this.disconnect); } //New test = () => { console.log("Disconnect..."); console.log(this.disconnect_func); console.log(this.disconnect); }y funciona