Uygulamamız, büyük heterojen öğeler listelerinde gezinmek için sonsuz kaydırma kullanır. Birkaç kırışıklık var:
- Kullanıcılarımızın 10.000 öğelik bir listeye sahip olması ve 3k + 'da gezinmesi yaygın bir durumdur.
- Bunlar zengin öğelerdir, bu nedenle, tarayıcı performansı kabul edilemez hale gelmeden önce DOM'da yalnızca birkaç yüze sahip olabiliriz.
- Öğeler farklı yüksekliklerdedir.
- Öğeler resimler içerebilir ve kullanıcının belirli bir tarihe atlamasına izin veririz. Bu aldatıcıdır çünkü kullanıcı, görüntüleri görüntü alanının yukarısında yüklememiz gereken ve yüklendiklerinde içeriği aşağı iten bir noktaya atlayabilir. Bunun işlenememesi, kullanıcının bir tarihe atlayabileceği, ancak daha sonra daha önceki bir tarihe kaydırılabileceği anlamına gelir.
Bilinen, eksik çözümler:
( react-infinite-scroll ) - Bu sadece basit bir "dibe vurduğumuzda daha fazla yükle" bileşenidir. DOM’un hiçbirini ayırmaz, bu nedenle binlerce öğede ölecektir.
( React ile Kaydırma Konumu ) - Yukarıya veya aşağıya yerleştirirken kaydırma konumunun nasıl saklanacağını ve geri yükleneceğini gösterir, ancak ikisi birden değil.
Tam bir çözüm için kod aramıyorum (yine de bu harika olurdu.) Bunun yerine, bu durumu modellemek için "React yolunu" arıyorum. Kaydırma konumu durumu mu, değil mi? Listedeki konumumu korumak için hangi durumu izlemeliyim? Oluşturulan şeyin altına veya üstüne yakın bir yere kaydırdığımda yeni bir oluşturmayı tetiklemek için hangi durumu korumam gerekiyor?