У меня есть компонент React.memo, который я хочу отобразить, только если свойства не меняются при отправке второго аргумента функции isEqual. Когда я console.log компонент оболочки и запомненный компонент, я вижу, что он отображается с одними и теми же реквизитами .. Что я делаю не так?
Мой компонент-оболочка
export const WrapperComponent= props => {
console.log('MemoizeComponent', props);
return (
<MemoizeComponent name="memo"/>
);
}
export const WrapperComponent;
Мой запомненный компонент
export const Component = props => {
console.log('component: ', props.name)
return (
<div>{props.name}</div>
);
}
function isEqual(prevProps, nextProps) {
console.log(prevProps.name);
console.log(nextProps.name);
return prevProps.name === nextProps.name;
};
export const MemoizeComponent = React.memo(Component, isEqual);
вывод консоли:
memo
memo
component:memo
memo
memo
component:memo
I want to render only if the props doesn't change with sending a second argument isEqual function
это звучит как противоположность тому, что делаетReact.memo
- предотвращение повторного рендеринга, если свойства не изменились. - person Clarity   schedule 27.11.2019