Tengo un componente de clase nativo de reacción, en el que tengo una función de contador:
counter() { console.log("hi") this.setState({count:this.state.count+1}) }Tengo un estado llamado cuenta inicializado en 0. Tengo un texto que también muestra el valor de cuenta.
En mi renderizado, en el retorno, estoy tratando de llamar a esta función de contador enPress of a TouchableOpacity. Probé 2 cosas en onPress con 2 salidas diferentes. ¿Alguien puede explicar por qué obtuve estos resultados para cada caso? :
aquí, el valor del estado se estaba actualizando y mostrando, y también obtuve el archivo console.log (salida deseada)
aquí, obtuve el archivo console.log, pero el valor del estado no se actualizaba. ¿Por qué no se actualiza el estado aquí?
Gracias por adelantado
Si desea llamar a la función de contador sin patrón de flecha en el componente de clase, entonces debe llamar al enlace en el bloque constructor para la función de contador
constructor(props) { super(props); this.counter = this.counter.bind(this); } counter() { this.setState({ count: this.state.count + 1 }); }