Using state to control the active view
In this section, we’ll start building a new App
component, in the usual way. First, we’ll display an AppointmentsDayViewLoader
component. Because this child component makes a network request when mounted, we’ll mock it out. Then, we’ll add a button inside a menu
element, at the top of the page. When this button is clicked, we switch out the AppointmentsDayViewLoader
component for a CustomerForm
component.
We will introduce a state variable named view
that defines which component is currently displayed. Initially, it will be set to dayView
. When the button is clicked, it will change to addCustomer
.
The JSX constructs will initially use a ternary to switch between these two views. Later, we’ll add a third value called addAppointment
. When we do that, we’ll “upgrade” our ternary expression to a switch
statement.
To get started, follow these steps:
- Create a new file,
test/App...