Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

140
Views
El valor del conteo en el estado no se incrementa

en mi aplicación,

 class App extends Component { constructor(props){ super(props) this.state={ count:0 } } render() { return ( <div className='App-header'> <button onClick={()=>{this.setState({count:this.state.count=this.state.count++})}}>You Clicked This : {this.state.count} Times.</button> </div> ) } }

Agregué un evento en este botón:

 <button onClick={()=>{this.setState({count:this.state.count=this.state.count++})}}>You Clicked This : {this.state.count} Times.</button>

pero cuando hago clic en él, el valor de la cuenta no se incrementa

pd: soy nuevo en reaccionar

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Esto tiene más que ver con javascript simple y antiguo que reaccionar y administrar el estado.

A continuación se muestra una pequeña reproducción de su problema:

 let y = 2; y = y++; console.log(y); y = ++y; console.log(y);

Esto se debe a cómo funciona ++ [(operador de incremento)] (si se usa postfijo, con operador después del operando (por ejemplo, x++), el operador de incremento incrementa y devuelve el valor antes de incrementar).

De los documentos:

Si se usa postfijo, con operador después del operando (por ejemplo, x++), el operador de incremento incrementa y devuelve el valor antes de incrementar. Si se usa como prefijo, con el operador antes del operando (por ejemplo, ++x), el operador de incremento incrementa y devuelve el valor después del incremento.

También es digno de mención que no debe hacer nada como:

 this.state.variable = randomValue;

La solución

 this.setState({count:this.state.count=++this.state.count})

funcionará porque

 this.state.count=++this.state.count

devuelve el conteo de incrementos. Pero el estado en realidad se actualiza con this.setState y también puede hacer:

 this.setState({count:++this.state.count})

Cuando el valor del nuevo estado depende del valor anterior

about 4 years ago · Juan Pablo Isaza Report

0

Además de las respuestas anteriores, al actualizar el estado, que depende del estado anterior, debe usar la función de devolución de llamada en la actualización del estado que recibe el estado anterior y el valor de retorno es el estado actualizado

 this.setState(previousState => ({count: previousState.count + 1}))
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!