useState with future value

PHOTO EMBED

Sun Jul 23 2023 14:27:40 GMT+0000 (Coordinated Universal Time)

Saved by @nelson22

▶ App.tsx

import './App.css';
import User from './components/state/User';

function App() {

  return (
    <div className="App">
      <User />
    </div>
  );
}

export default App;

----------------------------------------------------------------------------------------------------------

▶ User.tsx

import { useState } from "react"

type AuthUser = {
    name: string,
    email: string
}

const User = () => {
    const [isLoggedIn, setIsLoggedIn] = useState<AuthUser | null>(null)
    const userLogin = () => {
        setIsLoggedIn({
            name: 'Nel',
            email: 'nel@gmail.com'
        })
    }

    const userLogout = () => {
        setIsLoggedIn(null)
    }

    return (
        <div>
            <button onClick={userLogin}>Login</button>
            <button onClick={userLogout}>Logout</button>
            <p>{isLoggedIn ? `${isLoggedIn?.name} User is logged in` : 'User is logged out'}</p>
        </div>
    )
}

export default User
content_copyCOPY