Middle+
React.memo, баъди худо, кадом аргументҳоро қабул мекунад?
sobes.tech AI
Ҷавоб аз AI
React.memo دو استدلال میپذیرد:
- جزء، که باید حافظهدار شود — معمولاً یک جزء تابعی.
- تابع مقایسه (اختیاری) — دو شیء props (prevProps و nextProps) را میپذیرد و اگر
trueبرگرداند، propsها برابر در نظر گرفته میشوند و نیاز به رندر مجدد نیست، یا اگرfalseباشد، باید جزء بهروزرسانی شود.
نمونهای از استفاده با تابع مقایسه:
const MyComponent = React.memo(function MyComponent(props) {
// رندر
}, (prevProps, nextProps) => {
// فقط فیلدهای مورد نیاز را مقایسه میکنیم
return prevProps.value === nextProps.value;
});
اگر تابع مقایسه ارائه نشود، React.memo بهطور پیشفرض مقایسه سطحی props را انجام میدهد.