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

314
Views
Cómo setState () puede obtener 'estado' sin esto en el componente de clase React

Soy un estudiante que empezó a estudiar React. Mientras estudio sobre los componentes de la clase, tengo una pregunta. Tengo una pregunta de this.setState dentro de la función click() del código fuente a continuación. 'this.setState' puede obtener un estado que es un parámetro en la función de flecha. ¿Cómo puede 'setState' simplemente obtener el estado anterior? Me pregunto cómo es posible obtenerlo solo con estado, no con este estado. Supongo que está relacionado con la clase React.Component heredada, pero le agradecería que me diera una respuesta precisa.

 class Component extends React.Component { state = { count: 0, }; constructor(props) { super(props); this.click = this.click.bind(this); } click() { this.setState((state) => ({ state, ...{ count: state.count + 1 } })); console.log(this.state); } render() { return ( <div> <button onClick={this.click}>click!</button> {this.state.count} {this.props.message} </div> ); } } ReactDOM.render(<Component message='기본값 아니지롱' />, document.querySelector('#root'));
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Debe usar this.state ya que el estado es una propiedad de su clase y no una variable independiente.

setState puede acceder al estado ya que declara esa variable al comienzo de su función de flecha. también podrías llamarlo plátano. el primer parámetro de la función de flecha se llena con this.state .

about 4 years ago · Juan Pablo Isaza Report

0

El state dentro de la función de callback de llamada de this.setState ya es el estado anterior, que es más preciso que this.state .

Puede cambiar el nombre del parámetro dentro de la devolución de llamada como desee:

 this.setState((prev)=>{ prev, ...{ count: prev.count + 1 } }); // This works even better, since the prev here does not equal to this.state and more accurate

Para más detalles, puede consultar este enlace

state (en la función anterior) es una referencia al estado del componente en el momento en que se aplica el cambio. No debe ser mutado directamente. En su lugar, los cambios deben representarse mediante la creación de un nuevo objeto basado en la entrada de estado y accesorios.

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!