Hold ID of each row inside an array that you set when clicked. Use if statement inside JSX to check whether array has the ID value and show selected icon if it does, empty icon if it doesn’t.
const List = props => {
var pagedList = props.pagedList;
const [isFave, setIsFave] = useState([]);
const selectFavourite = e => {
const { id } = e.target;
if(isFave.includes(id)){
setIsFave(isFave.filter(item => item !== id));
}else{
setIsFave([...isFave, id]);
}
}
console.log(isFave);
return (
<>
{pagedList.map((row,i) => {
return (
<div key={i} className="list-card row">
<div className="col-12 col-md g-0 list-content">
<div
className="favouriteButton"
id={row.id_pg}
onClick={selectFavourite}
>
{isFave.includes(row.id_pg) ? <FavoriteIcon /> : <FavoriteBorderIcon /> }
</div>
</div>
</div>
);
})}
</>
);
}
export default List