Where we are
Let's take a look at the things we have created so far and how they interact with each other. If you've been following closely, this may all be familiar to you; but stick with it.
We will talk about how these interactions are failing us and how we can improve them. From the moment our interface begins to render, we start to see the following things happen:
We begin by creating a backend object. We use this as a store for the pages in our application. This has methods such as
add
,edit
,delete
, andall
. It also acts as an event emitter, notifying listeners whenever pages change.We create a
PageAdmin
React component and pass theBackend
object to it. ThePageAdmin
component uses theBackend
object as a data source for other page components, all of which are created within thePageAdmin
render method. ThePageAdmin
component listens for changes inBackend
as soon as it is mounted. It stops listening after it is unmounted.The
PageAdmin
component has a few callbacks, which it passes...