diff --git a/client/layouts/Header.tsx b/client/layouts/Header.tsx index aa1317c..98c10f9 100644 --- a/client/layouts/Header.tsx +++ b/client/layouts/Header.tsx @@ -8,7 +8,23 @@ import { Link } from 'react-router-dom'; import './header.css'; +const STARS_KEY = 'stars'; + const Header: React.FC<{}> = () => { + const stars = window.localStorage.getItem(STARS_KEY) || ''; + const [totalStars, setTotalStars] = React.useState(stars); + + React.useEffect(() => { + if (window.location.pathname === '/' || stars === '') { + fetch('https://api.github.com/repos/phuoc-ng/csslayout') + .then(res => res.json()) + .then(data => setTotalStars(data.stargazers_count)) + .catch(console.log); + } + }, []); + + React.useEffect(() => window.localStorage.setItem(STARS_KEY, totalStars), [totalStars]); + return (
@@ -17,7 +33,7 @@ const Header: React.FC<{}> = () => { Patterns - GitHub + {totalStars}★