React Basic Hooks - useEffects sample

by pizza_hamburger_chicken

HTML

<div id="root"></div>
<div id="other-div"></div>

CSS

body {
  height: 100vh;
  font-family: 'Open Sans', sans-serif;
  font-weight: bold;
  font-size: 24px;
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  text-align: center
}

#root, #other-div {
  width: 100%;
}

React

const {useState, useEffect, useRef} = React;

const usePreviousValue = (value) => {
  const ref = useRef();
  useEffect(() => {
    ref.current = value;
  });
  return ref.current;
};

function Example() {
	const [menuName, setMenuName] = useState();
  const previousValue = usePreviousValue(menuName);
  
	const handleMenuName = (event) => {
    setMenuName(event.target.innerText);
  };
  
    
  useEffect(() => {   
		console.log({menuName})
    if(event.target.innerText !== previousValue) {
    	han
    }
  }, [menuName]);
 
  
  return (
    <div>
      <div onClick={(e) => handleMenuName(event)}>1</div>
      <div onClick={(e) => handleMenuName(event)}>2</div>
      <div onClick={(e) => handleMenuName(event)}>3</div>
      <div>menuName: {menuName}</div>
    </div>
  );
}

ReactDOM.render( <Example />, document.getElementById('root') );