[英]Why React.memo and shouldComponentUpdate aren't doing the same?
[英]Converting shouldcomponentupdate to memo in React
使用 React 備忘錄的等效代碼是什么?
shouldComponentUpdate(nextProps) {
if (this.props.addCourse !== nextProps.addCourse || this.props.level !== nextProps.level ) {
return true;
} else {
return false;
}
}
memo
高階組件消耗了一個額外的areEqual
function ,它應該返回shouldComponentUpdate
的倒數。
筆記
與 class 組件上的
shouldComponentUpdate()
方法不同,如果 props 相等,areEqual
function 返回true
,如果 props 不相等,則返回false
。 這與shouldComponentUpdate
。
const areEqual = (prevProps, nextProps) => {
if (
prevProps.addCourse !== nextProps.addCourse ||
prevProps.level !== nextProps.level
) {
return false;
}
return true;
};
memo(MyComponent, areEqual);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.