Realmente no sé la mejor manera de explicar esto: tengo una lista con bases y cada base tiene una lista de conectores (puede ser uno o varios), hice un filtro para filtrar mis bases por conectores, esto es lo que mi el método se parece a:
calcBaseList: function() { let tmp = []; if (this.filterConnector.length > 0) { this.listBase.forEach((base) => { if (this.filterConnector.includes(base.connectors[0].standard)) { tmp.push(base); } }); } else { tmp = this.listBase; } this.filtredBase = tmp; }, El problema es que cuando quiero filtrar, digamos con "conector_base_3" y tengo una de mis bases que tiene el "conector_base_3" como uno de los conectores pero no es el primero en la lista, la base no aparece en mi lista filtrada. Intenté cambiar base.connectors[0].standard con base.connectors.standard o base.connectors pero no filtra nada en ese caso
Lo siento si mi explicación es un poco confusa. ¿Alguien sabe cómo solucionar el problema aquí?
Debe verificar todos los conectores en su filtro, ¡no solo el primero!
calcBaseList() { let tmp = []; if (this.filterConnector.length > 0) { tmp = this.listBase.filter((base) => base.connectors.some(connector => this.filterConnector.includes(connector.standard))); } else { tmp = this.listBase; } this.filtredBase = tmp; },