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

288
Views
El botón desplegable muestra una fila en blanco. ¿Cómo soluciono el problema?

Mi problema es que tengo un menú desplegable y los elementos son un poco extraños. La primera fila se ve en blanco y los datos que tengo se ven así.

datos de los usuarios

Sé que el primer usuario tiene un nombre de username: null y probablemente por eso se muestra el espacio en blanco, pero en la interfaz quiero cambiar el nombre de usuario del usuario del índice 0 para que siempre diga "Yo mismo", ya sea nulo o no. ¿Cómo modifico su valor?

Así es como se ve el menú desplegable

desplegable

 async componentDidMount() { const ep = `${process.env.REACT_APP_API}/partners/roles`; const users = await axios.get(ep); if (users.data.success) { this.setState({ users: users.data.data.users.filter(f => !f.isArchived) }); } console.log("Users", users) if (this.props.item) { this.setState({ id: this.props.item.id, description: this.props.item.description, due: this.props.item.due, priority: this.props.item.priority, assigned: this.props.item.assigned }); } }

Aquí es donde se generan los elementos desplegables.

 <select name="assigned" id="assignedto" type="text" className="form-control" style={{ width: "70%" }} onChange={e => { this.setState({ assigned: e.target.value }); }} > <option value="">Myself</option> {this.state.users.map(e => ( <option value={e.id} key={e.id}> {e.username} </option> ))} </select>
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

¿Quizás usar el índice?

 <select name="assigned" id="assignedto" type="text" className="form-control" style={{ width: "70%" }} onChange={e => { this.setState({ assigned: e.target.value }); }} > <option value="">Myself</option> {this.state.users.map(e => ( <option value={e.id} key={e.id} index> index == 0 ? 'Myself' : {e.username} </option> ))} </select>
about 4 years ago · Juan Pablo Isaza Report

0

Puedes agregar un cheque mientras renderizas así:

 <option value={e.id} key={e.id}> {e.username ? e.username : 'Myself'} </option>

Por lo general, el enfoque correcto es limpiar sus datos cuando configura el estado:

 users.forEach((u => { if (!u.name) { u.name = 'Myself'; } }));
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!