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

134
Views
Por qué el evento onClick no cambia props.title en React

quiero cambiar el

título

al hacer clic en el botón pero no cambia, ¿puedo tener una explicación de por qué sucede eso?

 import './ExpenseItem.css'; import ExpenseDate from './ExpenseDate'; import Card from './Card'; function ExpenseItem(props){ let title = props.expenseTitle; function clickedFunc(){ title = "Update!"; } return( <Card className='expense-item'> <ExpenseDate expenseDate={props.expenseDate}></ExpenseDate> <div className='expense-item__description'> <h2>{title}</h2> <div className='expense-item__price'> &#8377;{props.expenseAmount} </div> </div> <button onClick={clickedFunc}>Click</button> </Card> ); } export default ExpenseItem;
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No es así como se manejan los datos con React.

El título debe almacenarse en una variable de estado (ver useState ).

Una vez que los datos se almacenan en una variable de estado, deberá configurarlos con setState . Cuando se llama a setState en React, el componente que contiene la variable de estado se vuelve a renderizar. Esto, a su vez, hará que su componente ExpenseItem se vuelva a procesar porque es un componente secundario de cualquier componente de nivel superior que le haya pasado props .

En su componente principal, debería ver algo como:

 require { useState } from 'react'; const ParentComponent = (props) => { const [title, setTitle] = useState('Original Title'); ... ... ... return ( <div className="ParentComponent"> <ExpenseItem title={title} setTitle={setTitle} expenseAmount={expenseAmount} /> </div> ) }

Luego, en su función clickedFunc() :

 function clickedFunc() { props.setTitle("Update!"); }
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!