Różnica między Pure Component, a React.memo() w React

0

Witam,

Czy mógłby ktoś wyjaśnić jaka jest różnica między Pure Component, a React.memo() w React? Oba te komponenty służą do tego aby ponownie nie był renderowany dany komponent jeśli nie zmieniły się w nim wartości propsów.

0

Nie mam hands-on doświadczenia, ale patrząc na dokumentację:
Używasz React.PureComponent jeśli twój komponent zawsze renderuje to samo z tych samych props i state - tj. nie używa żadnych wartości spoza tych dwóch źródeł, np. jakiejś globalnej wartości czy kontekstu.
Używasz React.memo gdy twój komponent jest ciężki do wyrenderowania. Wtedy React zapamiętuje co wyrenderował dla konkretnych propsów i jeśli przekażesz te same propsy po raz kolejny, nie będzie renderował tego komponentu ponownie, tylko użyje tego, co zapamiętał.

0

Memo jest dla funkcyjnych, pure component jest dla klas. Generalnie dzialaja tak samo, przy czym w memo da się dodatkowo ustawić co konkretnie ma być porównywane.

1 użytkowników online, w tym zalogowanych: 0, gości: 1