4Geeks Coding Projects tutorials and exercises for people learning to code or improving their coding skills
Difficulty
beginnerRepository
Click to openVideo
Click to openLive demo
Not available
Average duration
4 hrs
Technologies
Sometimes we want to create components with an internal state that changes overtime, imagine a traffic light that changes color every 3 seconds, for that we normally will make a variable color and set it to a default color:
1let color = "blue";
But we want our component to re-render and change the website HTML every time the variable color changes, that's why we use hooks:
1// ↓ variable name ↓ default value 2const [ color, setColor] = useState("red"); 3// ⬆ function to change the color
From now one, every time we use the function setColor
to change the variable color, the component will re-render and the entire traffic light HTML will be updated with the new color.
You can read more about hooks here.
Do not clone this repository.
The first step to start coding is cloning the react boilerplate on your local computer or gitpod.
a) If using Gitpod (recommended) you can clone the boilerplate by clicking here.
b) If working locally type the following command from your command line: $ git clone https://github.com/4GeeksAcademy/react-hello
.
💡 Important: Remember to create a new repository, update the remote (git remote set-url origin <your new url>
), and upload the code to your new repository using add
, commit
and push
.
Let's simulate a traffic light like this one.
The light has to glow when clicked.
1const [ color, setColor] = useState("red");
Use the setColor function to change the color and the component will automatically re-render (because it's hooked with useState
).
Use the ReactDOM.render to render the component into the DOM like this
1ReactDOM.render(<TrafficLight />, document.querySelector('#app'));
+2 Create one button that when you click on it, it cycles the traffic light selected color between red, green and yellow.
+10 Have a button that when clicked it ads an extra color "purple" to the traffic light.
4Geeks Coding Projects tutorials and exercises for people learning to code or improving their coding skills
Difficulty
beginnerRepository
Click to openVideo
Click to openLive demo
Not available
Average duration
4 hrs
Technologies