Estoy creando un nuevo componente en React para mostrar filtros. Mis datos de filtro se ven así:
{countries: [0: {value: 'England'}, 1: {value: 'Australia'}], continents: []}En mi función de representación, quiero devolver un div para cada valor dentro de un objeto (Inglaterra, Australia). Actualmente, no obtengo nada prestado al Dom.
render() { const {i18n, t} = this.props; return <div className={'filter'}> <ul className={'filter-list'}> { Object.keys(this.props.filters).map(i => { this.props.filters[i].forEach( element => { console.log('element', element) return <p>{element.value}</p> } ) }) } </ul> </div>; }¿Alguien sabe cómo podría lograr esto/devolver el valor correctamente?
forEach no devuelve nada. Necesitarás usar el map en su lugar:
{ Object.keys(this.props.filters).map((i) => { // Switched to .map and added `return` return this.props.filters[i].map((element) => { return <p>{element.value}</p>; }); }); }Este código creará una matriz bidimensional de elementos, pero reaccionar lo admite.