34. useEffect
useContext is another React Hooks function. Although it is not as common as useState and useEffect. It accepts a context object (the value returned from React.createContext) and returns the current context value for that context. The current context value is determined by the value prop of the nearest above the calling component in the tree. When the nearest above the component updates, this Hook will trigger a rerender with the latest context value passed to that MyContext provider. It is still very useful in setting up theme, storing certain states for the whole app, for example, authentications or shopping cart. By customizations, various possibility can be made by using useContext.