The problem is that if I am applying filter, filteredList will be updated based on the filter if I would like to filter it again, it will give me nothing back.
const [filteredList, setFilteredList] = useState([]);
const [searchquery, setSearchquery] = useState("");
useEffect(() => {
fetch("api/device/getall")
.then((res) => res.json())
.then(
(result) => {
setIsLoaded(true);
setFilteredList(result);
},
(error) => {
setIsLoaded(true);
setError(error);
}
);
}, []);
const FilterSearchQuery = (filteredData) => {
const filteredDevice = filteredData.filter(
(item) =>
item.deviceName
.toString()
.toLowerCase()
.indexOf(searchquery.toLowerCase()) > -1 ||
);
return filteredDevice;
};
useEffect(() => {
var filteredData = FilterDevicelocation(filteredList);
setFilteredList(filteredData);
}, [searchquery]);