Tworzysz komponent wirtualnej listy (wyświetla n z ∞ elementów).

propTypes: {
	startIndex: PropTypes.number,
	allItems: PropTypes.arrayOf(PropTypes.object)
}

Własność startIndex jest ustawiana przez parent component, załóżmy że na skutek przewijania kółkiem myszy.

W render function należy dla każdego elementu dom użyć key aby pomóc algorytmowi w rekonsyliacji. Skąd brać wartość atrybutu key aby zachować minimalną ilość mutacji podczas "przewijania" - inkrementowania własności startIndex.

A skąd key należałoby brać, gdyby lista nie była wirtualna?

mid