π΅ state #
A component needs state when some data associated with it changes over time. For example, a Checkbox component might need isChecked in its state, and a NewsFeed component might want to keep track of fetchedPosts in its state.
The most important difference between state and props is that props are passed from a parent component, but state is managed by the component itself. A component cannot change its props, but it can change its state.
For each particular piece of changing data, there should be just one component that βownsβ it in its state. Donβt try to synchronize states of two different components. Instead, lift it up to their closest shared ancestor, and pass it down as props to both of them.