Last active
August 25, 2021 12:50
-
-
Save hieptl/7a81991913ca7d6a744942fac974d48f to your computer and use it in GitHub Desktop.
Header - Uber Clone
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// import useContext | |
import { useContext } from 'react'; | |
// import Context | |
import Context from '../Context'; | |
// import react router | |
import { useHistory } from 'react-router-dom'; | |
// import logo white | |
import logoWhite from '../logo_white.png'; | |
function Header() { | |
const { user, setUser } = useContext(Context); | |
const history = useHistory(); | |
/** | |
* logout | |
*/ | |
const logout = () => { | |
const isLogout = window.confirm('Do you want to log out ?'); | |
if (isLogout) { | |
// remove local storage. | |
localStorage.removeItem('auth'); | |
// remove authenticated user from context. | |
setUser(null); | |
// redirect to login page. | |
history.push('/login'); | |
} | |
} | |
return ( | |
<div className="header"> | |
<div className="header__left"> | |
<img src={logoWhite} alt="Uber Clone" /> | |
{ | |
user && ( | |
<div className="header__right"> | |
<img src={user.avatar} alt={user.email}/> | |
<span>Hello, {user.email}</span> | |
</div> | |
) | |
} | |
</div> | |
<span className="header__logout" onClick={logout}><span>Logout</span></span> | |
</div> | |
); | |
} | |
export default Header; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment