Do not define components during render. React will see a new component type on every render and destroy the entire subtree’s DOM nodes and state (https://reactjs.org/docs/reconciliation.html#elements-of-different-types). Instead, move this component definition out of the parent component “NavContainer” and pass data as props. If you want to allow component creation in props, set allowAsProps option to true