In the core-triad of MobX, reactions play the role of affecting the outside world. In Chapter 2, Observables, Actions, and Reactions, we have seen a few of these reactions in the form of
observer() is yet another kind of reaction that helps in binding the React world to MobX.
observer() is part of the
mobx-react NPM package, a binding library for MobX and React. It creates a higher-order-component (HOC) that wraps a React component to automatically update on changes to the observable state. Internally,
observer() keeps track of observables that are dereferenced in the
render method of the component. When any of them change, a re-render of the component is triggered.
It is quite common to sprinkle
observer() components throughout the UI component tree. Wherever an observable is required to render the component, an
observer() can be used.
The UI that we want to build will map the observable state of the
BookSearchStore to various components...