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

236
Views
En react.js, los valores de estado actualizados no se muestran en la lista de tablas (valor de estado de uso de la lista de tablas)

Acabo de hacer una tabla para mostrar los correos electrónicos de los clientes y agregué funciones para eliminar o agregar nuevos correos electrónicos. pero para agregar la función, guardé el nuevo correo electrónico en el estado ( users ). pero no se muestra en la lista de tablas de correo electrónico. ¡La función de eliminación funciona muy bien! ¿podrían ayudarme a solucionar este problema? Acabo de adjuntar mi código

 import React, {useState} from 'react'; const Admin: NextPage = () => { const [users, setUsers] = useState([ { email: "xxxxx@xxxxx.com" }, { email: "xxxxx@xxxxx.com"}, ]); const [email, setEmail] = useState(''); const removeUser = rowEmail => { const updatedArray = users.filter((row) => row.email !== rowEmail); setUsers(updatedArray); } const addUser = () => { console.log(email); const lists = users; lists.push({'email' : email}); setUsers(lists); } return ( <> <div className="user-user"> <input type="email" onChange={event => setEmail(event.target.value)} /> <span onClick={() => addUser()}>Add User</span> </div> <div className="user-list"> <table> <thead> <tr> <th>Users</th> <th>Action</th> </tr> </thead> <tbody> {users.map((val, key) => { return ( <tr key={key}> <td>{val.email}</td> <td><span onClick={() => removeUser(val.email)}>Remove</span></td> </tr> ) })} </tbody> </table> </div> </> ); } export default Admin;
about 4 years ago · Santiago Gelvez
1 answers
Answer question

0

La línea const lists = users; no crea una nueva matriz. Simplemente crea una nueva variable que apunta a la misma matriz. Así que las lists.push({'email' : email}); mutará el estado, pero de una manera que reaccionará no se dará cuenta de ello.

usar

 const lists = [...users];
about 4 years ago · Santiago Gelvez 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!