react.cloneelement example

Example 1: react memo

function MyComponent(props) {
  /* render using props */
}
function areEqual(prevProps, nextProps) {
  /*
  return true if passing nextProps to render would return
  the same result as passing prevProps to render,
  otherwise return false
  */
}
export default React.memo(MyComponent, areEqual);

Example 2: react clone element

React.cloneElement(
  element,
  [props],
  [...children]
)

// Clona e restituisce un nuovo elemento React utilizzando
// element come punto di partenza. 
// L’elemento risultante riceverà come props lo 
// shallow merge delle props dell’elemento originale
// e le props passate come argomento. 
// I nuovi children specificati come argomento sostituiranno i children
// dell’elemento originale. key e ref dell’elemento originale verranno preservati.