React.memo — component re-render control. useMemo — value computation caching.
React.memo:
1const ExpensiveComponent = React.memo(({ data, onPress }) => {2 console.log("Render");3 return (4 <TouchableOpacity onPress={onPress}>5 <Text>{data.name}</Text>6 </TouchableOpacity>7 );8});
useMemo:
1const sortedItems = useMemo(() => {2 return items.sort((a, b) => a.name.localeCompare(b.name));3}, [items]);
When to use:
Anti-pattern: