componentwillmount in react memo code example
Example 1: replace componentwillmount with hooks
useEffect(() => {
//will be called on every load
})
useEffect(() => {
//will be called on component mount
window.addEventListener('mousemove', () => {});
// returned function will be called on component unmount
return () => {
window.removeEventListener('mousemove', () => {})
}
}, []) // <---- empty array at end will cause to only run on first load
Example 2: 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);