React.memo针对函数式组件使用
(1)第一个参数是函数式组件,第二个参数可选
(2)当props改变时,才会重新渲染组件,默认是浅比较(引用地址);
(3)传入第二个参数可进行自定义深比较
return true; 不渲染
return false; 渲染
用法:
React.memo((props)=>{return 组件},(prevProps,nextProps)=>{ return true/false});
代码示例:
当复杂类型的参数的引用改变时,才会重新渲染,可通过第二个参数返回true/false,进行自定义渲染
import React,{useState,useRef,useCallback,useEffect,useMemo} from 'react';
import PropTypes from 'prop-types';
import './slider.css'
function App(props){
console.log('ww');
console.log(props.count1);
return(
<div>
{/* {props.arr} */}
</div>
)
}
export default React.memo(App);