Ваш поисковый ввод должен использовать аналогичный обработчик onChange.
Ваши начальные данные не должны быть напрямую установлены в вашем useState
, отделите их в новый файл с именем (то есть :) data.js
и импортируйтеэто как data
.
Затем при изменении ввода просто отфильтруйте данные и выберите наиболее подходящую строку.
const handleSearchChange = e => {
const {
target: { value }
} = e;
if (!!value) {
const filteredData = data.filter(row => {
return Object.values(row)
.join(" ")
.toLowerCase()
.includes(value.toLowerCase());
});
setIsAll(filteredData);
} else {
setIsAll(data);
}
};
демонстрационная версия песочницы