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

110
Views
El filtro no devuelve los datos adecuados

Intentando crear un filtro que devolverá artículos dependiendo de alguna propiedad (inStock en este caso)

No obtengo ningún artículo cuando trato de configurar el filtro para filtrar solo los artículos que tienen verdadero en su propiedad inStock, en absoluto.

cuando la disponibilidad de console.log: obtengo el booleano adecuado que configuré en el filtro (verdadero/falso) y cuando consola.log los elementos inStock, todos devuelven verdadero (lo cual está bien, es lo que configuré).

Intenté establecer el valor en el componente de filtro como una cadena, pero todavía no funcionó.

agradecería mucho su ayuda con esto

juguete.servicio.js

 function query(filterBy) { return storageService.query(STORAGE_KEY).then((toys) => _filteredToys(toys, filterBy)); } function _filteredToys(toys, filterBy) { const { txt, availability } = filterBy; const filteredtoys = toys.filter((toy) => { console.log(availability); console.log(toy.inStock); return toy.inStock === availability; }); return Promise.resolve(filteredtoys); }

el componente de filtro de juguete

 import React from 'react'; export class ToyFilter extends React.Component { state = { filterBy: { availability: '', txt: '', }, }; handleChange = ({ target }) => { const { name, value } = target; this.setState( (prevState) => ({ filterBy: { ...prevState.filterBy, [name]: value } }), () => { this.props.onSetFilter(this.state.filterBy); } ); }; render() { const { txt } = this.state.filterBy; return ( <section> <select name='availability' onChange={this.handleChange}> <option value='' key='filter-all'> All </option> <option value={true} key='filter-in-stock'> in stock </option> <option value={false} key='filter-sold-out'> sold out </option> </select> <input type='text' name='txt' value={txt} onChange={this.handleChange} placeholder='Search toy...' /> </section> ); } }
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

La forma en que está configurando la availability en el estado, siempre será una cadena. Tan true en la salida de la consola no es un valor booleano sino una cadena. Verifique el tipo de datos de disponibilidad usando typeof availability . Supongo que la comparación return toy.inStock === availability está fallando porque inStock es bool mientras que la disponibilidad es string .

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!