Что правильный способ сделать фильтр на массив внутри переключателя заявлениеJavascript обратный отфильтрованный массив внутри переключателя заявление
let filteredMachines = (filterTerm,filterField) => {
switch (filterField) {
case 'NomAppareil':this.props.machines.filter(machine => {
return machine.nomAppareil === filterTerm;
});
break;
case 'CodeAppareil':this.props.machines.filter(machine => {
return machine.codeAppareil === filterTerm;
});
break;
case 'NomClient':this.props.machines.filter(machine => {
return machine.nomClient === filterTerm;
});
break;
case 'CodeClient':this.props.machines.filter(machine => {
console.log('inside CodeClient ='+JSON.stringify(machine));
return (machine.codeClient == filterTerm);
});
break;
case 'NoSerie':this.props.machines.filter(machine => {
return machine.noSerie === filterTerm;
});
break;
default: return this.props.machines;
}
};
Edit: я нашел рабочий раствор приведенной ниже
let filteredMachines = machines.filter((machine) =>{
switch (filterField) {
case 'NomAppareil': return machine.nomAppareil === filterTerm;
case 'CodeAppareil': return machine.codeAppareil === filterTerm;
case 'NomClient': return machine.nomClient === filterTerm;
case 'CodeClient': return machine.codeClient === filterTerm;
case 'NoSerie': return machine.noSerie === filterTerm;
default: return true;
}
});
В чем главная проблема? Вышеупомянутый код не работает ИЛИ вы ищете оптимизированный (рефакторизованный) подход? – RomanPerekhrest
Код не работает – AGdev
, пожалуйста, добавьте несколько вариантов использования и желаемый результат и ошибки, которые вы получите. –