done assignment 4
This commit is contained in:
parent
9c80e85ff2
commit
f423d4acb6
Binary file not shown.
|
@ -23,7 +23,6 @@ const Home = () => {
|
||||||
if (!hasMore) return;
|
if (!hasMore) return;
|
||||||
|
|
||||||
setShowSkeleton(true);
|
setShowSkeleton(true);
|
||||||
setLoading(true);
|
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
axios
|
axios
|
||||||
|
@ -39,7 +38,7 @@ const Home = () => {
|
||||||
setLoading(false);
|
setLoading(false);
|
||||||
setShowSkeleton(false);
|
setShowSkeleton(false);
|
||||||
});
|
});
|
||||||
}, 2000);
|
}, 1000);
|
||||||
}, [page]);
|
}, [page]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
@ -58,11 +57,13 @@ const Home = () => {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FILTER DATA ACCORDING TO CHARACTER NAME
|
||||||
const filtered = data.filter((character) =>
|
const filtered = data.filter((character) =>
|
||||||
character.name.toLowerCase().includes(query)
|
character.name.toLowerCase().includes(query)
|
||||||
);
|
);
|
||||||
setFilteredData(filtered);
|
setFilteredData(filtered);
|
||||||
|
|
||||||
|
// AUTO COMPLETE SUGGESTIONS
|
||||||
const autoSuggestions = data
|
const autoSuggestions = data
|
||||||
.map((character) => character.name)
|
.map((character) => character.name)
|
||||||
.filter((name) => name.toLowerCase().includes(query))
|
.filter((name) => name.toLowerCase().includes(query))
|
||||||
|
@ -70,6 +71,7 @@ const Home = () => {
|
||||||
setSuggestions(autoSuggestions);
|
setSuggestions(autoSuggestions);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// AUTO COMPLETE SUGGESTIONS ONCLICK
|
||||||
const handleSuggestionClick = (suggestion) => {
|
const handleSuggestionClick = (suggestion) => {
|
||||||
setSearchQuery(suggestion);
|
setSearchQuery(suggestion);
|
||||||
setFilteredData(
|
setFilteredData(
|
||||||
|
@ -124,7 +126,7 @@ const Home = () => {
|
||||||
|
|
||||||
{showSkeleton && (
|
{showSkeleton && (
|
||||||
<ul className="skeleton-character-container">
|
<ul className="skeleton-character-container">
|
||||||
{Array.from({ length: 5 }).map((_, index) => (
|
{[...Array.from({ length: 5 })].map((_, index) => (
|
||||||
<li className="skeleton-character-card skeleton" key={index}>
|
<li className="skeleton-character-card skeleton" key={index}>
|
||||||
<div className="skeleton-character-details">
|
<div className="skeleton-character-details">
|
||||||
<div className="skeleton-line skeleton-title"></div>
|
<div className="skeleton-line skeleton-title"></div>
|
||||||
|
@ -136,6 +138,7 @@ const Home = () => {
|
||||||
</li>
|
</li>
|
||||||
))}
|
))}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{hasMore && <div ref={ref}></div>}
|
{hasMore && <div ref={ref}></div>}
|
||||||
|
|
Loading…
Reference in a new issue