Milyonlarca satır için JavaScript veri ızgarası [kapalı]


225

JavaScript kullanarak bir kullanıcıya veri satırları (yani milyonlarca satır) çok sayıda sunmanız gerekiyor.

Kullanıcı sayfaları görmemeli veya aynı anda yalnızca sınırlı miktarda veri görüntülememelidir.

Aksine, tüm verilerin mevcut olduğu görülmelidir.

Verileri bir kerede indirmek yerine, kullanıcı onlara geldiğinde küçük parçalar indirilir (ör. Izgarada ilerleyerek).

Satırlar bu kullanıcı arabiriminden düzenlenmeyecektir, bu nedenle salt okunur ızgaralar kabul edilebilir.

Bu tür kesintisiz sayfalama için JavaScript ile yazılmış hangi veri ızgaraları var?


1
Büyük veri kümeleri için başarısız gibi göründüğünden, jqgrid yanıtını kabul etmedim ... Başka bir öneriniz var mı? Ext-livegrid.com ne olacak ?
Rudiger

6
Kendin yaz. Diğerlerinin boğulduğundan eminim çünkü sadece DOM'a eklemeye devam ediyorlar. Bunu bir çözüm gerekir düşünüyorum kaldırır onlar kaydırırken sıralar kapalı ekranı. Tek yol bu. DOM'da bir milyon tablo satırı bulunamaz ve her tarayıcının her ortamda sorunsuz bir şekilde görüntülenmesini ve kaydırılmasını bekleyebilirsiniz. Mantıklı ol.
Josh Stodola

2
@Rudiger: SlickGrid artık yerel olarak sınırsız sayıda satırı destekliyor. Bkz. Github.com/mleibman/SlickGrid/tree/unlimited-rows . Bu iyice test edildikten sonra ana dalda birleştirilir.
Tin

10
Hangi firma için çalıştığınız için üzgünüm. Bilgileriniz için, yalnızca 1 milyon satır görüntülenen 1920x1080 ekran , kaydırma çubuğundaki her bir piksel hareketi için 20 satır atlayacaktır . Zamanınızı boşa harcamak yerine bazı kullanılabilirlik testleri yapın.
Uyuyan Smith

2
Bu soru ve ilk iki yanıtı (en azından) aşırı derecede faydalıdır. Bazı düşük kaliteli cevaplar almış olabilir, ancak bu soru hiçbir şekilde Kapalı olmamalıdır. Bu sorunu çözmek için SlickGrid'i kullanmak, insanları kendileri için yeniden uygulamaya çalışırlarsa, saatlerce sorun ve zor kodlamadan kurtarabilir.
Sam Watkins

Yanıtlar:


190

( Feragatname: Ben SlickGrid'in yazarıyım )

GÜNCELLEME Bu artık SlickGrid'de uygulanmıştır .

SlickGrid'in daha fazla sayıda satırla çalışmasına ilişkin devam eden bir tartışma için lütfen http://github.com/mleibman/SlickGrid/issues#issue/22 adresine bakın .

Sorun, SlickGrid'in kaydırma çubuğunun kendisini sanallaştırmamasıdır - kaydırılabilir alanın yüksekliği, tüm satırların toplam yüksekliğine ayarlanmıştır. Kullanıcı kaydırırken satırlar hala eklenmekte ve kaldırılmaktadır, ancak kaydırmanın kendisi tarayıcı tarafından yapılmaktadır. Bu çok hızlı ve pürüzsüz olmasını sağlar (kaydırma olayları kötü bir şekilde yavaştır). Uyarı, tarayıcıların CSS motorlarında bir öğenin potansiyel yüksekliğini sınırlayan hatalar / sınırlamalar olmasıdır. IE için bu 0x123456 veya 1193046 piksel olur. Diğer tarayıcılar için daha yüksektir.

"Largenum-fix" dalında kaydırılabilir alanı 1M piksel yüksekliğine ayarlanmış "sayfalar" ile doldurarak ve daha sonra bu sayfalarda göreli konumlandırma kullanarak bu sınırı önemli ölçüde yükselten deneysel bir geçici çözüm vardır. CSS motorundaki yükseklik sınırı, gerçek düzen motorundan farklı ve önemli ölçüde daha düşük göründüğünden, bu bize çok daha yüksek bir üst sınır verir.

Hala SlickGrid'in şu anda diğer uygulamalar üzerinde tuttuğu performans avantajından vazgeçmeden sınırsız sayıda satıra ulaşmanın bir yolunu arıyorum.

Rudiger, bunu nasıl çözdüğünüzü açıklayabilir misiniz?


1
En çekici olmak için SlickGrid bulduk - özellikle bir jQuery ile çalışırsa. Tebrikler! (özellikle büyük tutum ve sebat için.) :-)
Andras Vass

Excel başlıkları göstermek için slickgrid kullanmaya çalışıyorum ve çok fazla sütun olduğunda slickgrid sütunların değil, sadece satır kaydırma optimize görüyorum. Ayrıca 120'den fazla sütun olduğunda slickgrid yeni satırları yeni bir satıra koyar. Dosyalarda bir yerde maksimum satır sayısı ayarlanabilir mi?
oneiros

1
SlickGrid v2.1, sütunların yanı sıra satırlar için sanal kaydırma kullanır. Ayrıca, taşan sütunlar sorunu çözüldü.
Kalay

@Tin - Bu benim yaklaşımımla aynı; Zamanımın yıllarındaydım! "Tembel blok düzeni web uygulamaları içine sonsuz kaydırma oluşturmak için ilkel." docs.google.com/document/d/…
Rudiger

@Rudiger Evet, bunu yaklaşık bir ay önce Blink grubunda gördüm, ancak bunun resme nasıl uyduğundan emin değilim. Tembel düzen, gerçekten DOM'da bulunmayan, gerçekten yapamayacağımız öğeler üzerinde çalışır. Lütfen detaylandırın :)
Tin

84

https://github.com/mleibman/SlickGrid/wiki

" SlickGrid, yüzbinlerce öğeyle performansta herhangi bir düşüş olmadan kolayca çalışabilmenizi sağlamak için sanal oluşturmayı kullanır. Aslında, 100 satırlık bir satırla 10 satırlı bir ızgarayla çalışma arasında performans farkı yoktur. "

Bazı önemli noktalar:

  • Uyarlanabilir sanal kaydırma (yüz binlerce satırı ele alın)
  • Son derece yüksek oluşturma hızı
  • Daha zengin hücreler için arka plan post-rendering
  • Yapılandırılabilir ve özelleştirilebilir
  • Tam klavye gezintisi
  • Sütun yeniden boyutlandırma / yeniden sıralama / göster / gizle
  • Sütun otomatik boyutlandırma ve zorlama
  • Takılabilir hücre biçimlendiricileri ve düzenleyicileri
  • Yeni satırları düzenleme ve oluşturma desteği. " mleibman tarafından

Ücretsiz (MIT lisansı). JQuery kullanır.


Hassas 131.001 sıraya kadar iyi çalışıyor ... Yani, böyle bir kod satırı var: data.length = Math.min(131000, parseInt(resp.total));... Ve elbette, bir sebepten dolayı kodlanmış :(
Rudiger

6
Biraz çalışma gerektirdi, ancak ızgarayı datadizinin uzunluğundan bağımsız hale getirmek için birkaç değişiklik yaptım . Bu bir çamur, ama bir bigdatadizi doldurma yanıtları var ve diziden küçük dataçeker bigdata. Programın geri kalanı, kaydırma çubuğu ölçümü ve şimdi çok sayıda satır için sınırsız olan birkaç yer hariç daha küçük veri dizisini kullanır. Sonuçta, kendi yazmaktan çok daha kolay oldu.
Rudiger

8
@Rudiger: SlickGrid artık yerel olarak sınırsız sayıda satırı destekliyor. Bkz. Github.com/mleibman/SlickGrid/tree/unlimited-rows . Bu iyice test edildikten sonra ana dalda birleştirilir.
Tin

Excel başlıkları göstermek için slickgrid kullanmaya çalışıyorum ve çok fazla sütun olduğunda slickgrid sütunların değil, sadece satır kaydırma optimize görüyorum. Ayrıca 120'den fazla sütun olduğunda slickgrid yeni satırları yeni bir satıra koyar. Dosyalarda bir yerde maksimum satır sayısı ayarlanabilir mi?
oneiros

gerçekten hızlı bir şey istiyorsanız, çekirdekte bir şeyler yapmak için jquery kullanan herhangi bir şeye güvenmeyin ve DOM eklemesinden ziyade innerHTML kullanın. Javascript kaydırma çubukları yavaş bilgisayarlarda tarayıcı kaydırma çubuklarından daha yavaş farkedilebilir, karmaşık css kurallarından kaçınabilir ve tek bir satırın düzenini basitleştirmek için zaman harcamalısınız. Bu durumda mikro optimizasyonlar önemli olabilir. Bu, performansı artırmak için sadece genel pratiklerdir. jsPerf.com arkadaşın.
Vitim.us

37

Bence en iyi Izgaralar aşağıdadır:

En iyi 3 seçeneğim jqGrid, jqxGrid ve DataTables. Binlerce satırla çalışabilir ve sanallaştırmayı destekleyebilirler.


1
Karşılaştırma açısından çok fazla olmasa da, liste için +1. İyi bir başlangıç, her biri için taahhüt sayısını eklemek olacaktır - şu anda Flexigrid için 33, SlickGrid için 491.
Dan Dascalescu

12
Vida SO'nun 5 dakikalık yorum düzenleme sınırı. # 1 - jqGrid - 1000+ taahhüt ; DataTable'lar için # 2 - 752 ; SlickGrid için # 3 - 491 ; # 4 - 33 Flexigrid için taahhütte bulundu . Ingrid - Haziran 2011'den beri güncelleme yok . jqGridView - 2009'dan beri güncelleme yok
Dan Dascalescu

3
Önceki yoruma dayanarak, burada proje başına çatal sayısı dahil: # 1 - SlickGrid - 670 çatal; # 2 - jqGrid - 358 çatal; # 3 - Flexigrid - 238; # 4 - Veri Tabloları - 216; # 5 - Ingrid - 41; # 6 - jqGridView - 0;
ljs.dev


Slickgrid'in hala canlı ve iyi olduğunu yorumlayabilir miyim, ancak yukarıda belirtilen mleibman repo öldü. Yeni bağlantı: github.com/6pac/SlickGrid (mleibman repo ile ilgili son bir notta yer alıyor) veya www.slickgrid.net
Ben McIntyre

25

Bir alev savaşı başlatmak istemiyorum, ama araştırmacılarınızın insan olduğunu varsayarsak, onları düşündüğünüz kadar iyi tanımıyorsunuzdur. Petabaytlarca veriye sahip olmaları , milyonlarca kaydı bile anlamlı bir şekilde görüntülemelerini sağlamaz. Milyonlarca kayıt görmek istediklerini söyleyebilirler , ama bu sadece aptalca. En akıllı araştırmacılarınıza bazı temel matematik yapmalarını sağlayın: Her kaydı görüntülemek için 1 saniye harcadıklarını varsayın. Bu oranda, altı haftadan fazla süren 1000000 saniye sürecektir (40 saat çalışma haftasından, yemek veya lavabo için mola vermeden).

Onlar (veya siz) ciddi olarak bir kişinin (şebekeye bakan kişinin) bu tür bir konsantrasyon toplayabileceğini mi düşünüyorlar? Bu 1 saniyede gerçekten çok şey yapıyorlar mı yoksa istemedikleri şeyleri filtreliyorlar mı (daha olası) ? "Makul boyutlu" bir alt kümeyi görüntüledikten sonra, bu kayıtları otomatik olarak filtreleyecek bir filtre tanımlayabileceklerinden şüpheleniyorum.

Paxdiablo ve Sleeper Smith ve Lasse V Karlsen'in de ima ettiği gibi, siz (ve onlar) gereksinimleri düşünmediniz. Yukarı tarafta, şimdi SlickGrid'i bulduğunuza göre, bu filtrelere olan ihtiyacın hemen belli oldu.


2
Milyonlarca satıra ihtiyaç duyulması her zaman onları görüntülemekle ilgili değildir. Bazen müşteriler kendi veri analiz sistemlerinde çalışmak için kısmi kayıt dökümü isterler.
cbmeeks

10
Kendi analizi için bir veri dökümü olursa, o zaman bir web sayfasında bir ızgarada görüntülenmez, değil mi?
Steven Benitez

5
hepsini aynı anda görmek zorunda değilim. Sütun sıralaması budur ve Ctrl+Fbunun içindir. Alternatif (sayfalama, web sitesi arama) çok daha kötüdür. Sorular veya cevaplar arasında gezinmeye çalışırken StackOverflow'a, kullanıcının yorum geçmişinde gezinmek için Reddit'e bakın. Sıralama ve hızlı arama, Windows Gezgini'nin sahip olduğu bir güç sağlar, ancak web sitelerinin eksikliği vardır.
Ian Boyd

15

Kullanıcıya milyonlarca veri satırı göstermeniz gerekmediğini gayet iyi bir şekilde söyleyebilirim.

Dünyada bu veri kümesini anlayabilecek veya yönetebilecek bir kullanıcı yoktur, bu nedenle teknik olarak onu çıkarmayı başarabilirseniz bile, o kullanıcı için bilinen herhangi bir sorunu çözmezsiniz.

Bunun yerine , kullanıcının neden verileri görmek istediğine odaklanacağım . Kullanıcı sadece verileri görmek için verileri görmek istemez, genellikle bir soru sorulur. Bunun yerine bu soruları cevaplamaya odaklanırsanız, gerçek bir sorunu çözen bir şeye çok daha yakın olacaksınız.


16
Kullanıcılarım petabayt veriye alışkın olan araştırmacılar . Genel durumda kesinlikle haklısın, ancak kullanıcılarımı senden biraz daha iyi bildiğimi düşünüyorum. Gelince neden bu datagrid sadece büyük veri yönetmek için bir alet seti parçasıdır.
Rudiger

7

Arabellekli Görünüm özelliğiyle Ext JS Izgarasını öneririm.

http://www.extjs.com/deploy/dev/examples/grid/buffer.html


ExtJ'ler, gerçekten. Temel olarak özellikle veri sunumu için oluşturulmuştur
KdgDev

1
ExtJs çok iyi ağlamak istiyorum onun jQuery üzerine inşa değil
James Westgate

Artık uygulamanıza bir ExtJS ızgarası eklemek çok ağır olmayacak şekilde yalnızca ExtJS'nin ızgarayla ilgili kısımlarını yükleyebilirsiniz. Ancak, yine de görünümdeki farklılıkları göz önünde bulundurmanız ve ExtJS tema şeklini sadece bu bileşen için kullanmanız gerekir.
JD Smith

7

(Feragatname: w2ui'nin yazarıyım)

Geçenlerde 1 milyon kayıt içeren JavaScript ızgarasının nasıl uygulanacağı hakkında bir makale yazdım ( http://w2ui.com/web/blog/7/JavaScript-Grid-with-One-Million-Records ). Nihayetinde daha yüksek almayı engelleyen 3 kısıtlama olduğunu keşfettim:

  1. Div yüksekliğinin bir sınırı vardır (sanal kaydırma ile aşılabilir)
  2. Sıralama ve arama gibi işlemler 1 milyon kayıttan sonra yavaşlamaya başlar
  3. RAM sınırlı, çünkü veriler JavaScript dizisinde saklanıyor

Izgarayı (IE hariç) 1 milyon kayıtla test ettim ve iyi performans gösteriyor. Demolar ve örnekler için makaleye bakın.


Bu bir milyon kayıt ile html sayfanız 3MB boyutundadır, ancak verilerimi yüklediğimde sayfa 15MB'dir, w2ui bunu halledebilir mi? Bazı hesaplamalar için tüm verilere ihtiyacım var.
Chetan S. Choudhary

6

dojox.grid.DataGrid veriler için bir JS soyutlama sunar, böylece sağlanan dojo.data mağazalarıyla çeşitli arka uçlara bağlayabilir veya kendiniz yazabilirsiniz. Açıkçası bu birçok kayıt için rastgele erişimi destekleyen bir taneye ihtiyacınız olacak. DataGrid ayrıca tam erişilebilirlik sağlar.

Düzenle böylece Matthew Russell'ın dojox.grid ile milyonlarca kayıt görüntüleyerek ihtiyacınız olan örneği vermesi gereken makalesine bir bağlantı . Kılavuzun eski sürümünü kullandığını, ancak kavramların aynı olduğunu, bazı uyumsuz API iyileştirmeleri olduğunu unutmayın.

Oh, ve tamamen ücretsiz bir açık kaynak.



4

İşte size işleri hızlandırmak için uygulayabileceğiniz birkaç optimizasyon. Sadece yüksek sesle düşünmek.

Satır sayısı milyonlarca olabileceğinden, yalnızca sunucudaki JSON verileri için bir önbellek sistemi isteyeceksiniz. X milyonun tüm öğelerini indirmek isteyen kimseyi hayal edemiyorum, ama eğer yaparlarsa sorun olur. Chrome'da bu 20M + tamsayı dizisi için yapılan bu küçük test , makinemde sürekli çöküyor.

var data = [];
for(var i = 0; i < 20000000; i++) {
    data.push(i);
}
console.log(data.length);​

Sen kullanabilirsiniz LRU veya başka bir önbelleğe alma algoritması ve bir üst size cache istekli ne kadar veri bağlı bulunmaktadır.

Tablo hücrelerinin kendileri için, DOM düğümlerini oluşturmak / yok etmek pahalı olabilir. Bunun yerine, X sayısını hücre önceden tanımlayabilir ve kullanıcı yeni bir konuma her kaydırdığında JSON verilerini bu hücrelere enjekte edebilir. Kaydırma çubuğunun, tüm veri kümesini temsil etmek için ne kadar alan (yükseklik) gerektiği ile doğrudan bir ilişkisi yoktur. Tablo kabının yüksekliğini 5000 piksel gibi keyfi olarak ayarlayabilir ve toplam satır sayısına eşleyebilirsiniz. Örneğin, kapların yüksekliği 5000 piksel ise ve toplam 10 milyon satır varsa, starting row ≈ (scroll.top/5000) * 10Mburada scroll.topkap kabın üstünden kaydırma mesafesini temsil eder. Burada küçük demo .

Ne zaman daha fazla veri talep edileceğini saptamak için, ideal olarak bir nesne, olayları kaydırmayı dinleyen bir aracı olarak hareket etmelidir. Bu nesne, kullanıcının ne kadar hızlı kaydırdığını izler ve kullanıcı yavaşladığında veya tamamen durduğunda, ilgili satırlar için bir veri isteği yapar. Verileri bu şekilde almak, verilerinizin parçalanacağı anlamına gelir; bu nedenle önbellek, bu bilgileri göz önünde bulundurarak tasarlanmalıdır.

Ayrıca maksimum giden bağlantılardaki tarayıcı sınırları önemli bir rol oynayabilir. Bir kullanıcı bir AJAX isteğini tetikleyecek belirli bir konuma kayabilir, ancak bu işlem bitmeden önce başka bir bölüme geçebilir. Sunucu yeterince yanıt vermiyorsa, istekler sıraya alınır ve uygulama yanıt vermez. Tüm isteklerin yönlendirildiği bir istek yöneticisi kullanabilirsiniz ve alan açmak için bekleyen istekleri iptal edebilir.


4

Eski bir soru biliyorum ama yine de .. Ayrıca milyonlarca satır işleyebilir dhtmlxGrid vardır. 50.000 satır içeren bir demo var ancak ızgaraya yüklenebilen / işlenebilen satır sayısı sınırsız.

Feragatname: DHTMLX ekibindeyim.


10 MB Json verilerini göstermek ve hesaplamada kullanmak istiyorum, DHTMLX bu şeyi yapabilir mi, Bu veri ve html etiketleri ile tarayıcımın sayfası yaklaşık 15 MB. DHTMLX kullanmaya değer mi?
Chetan S. Choudhary


3

Yasal Uyarı: YUI DataTable'ı uzun süre baş ağrısı olmadan yoğun bir şekilde kullanıyorum . Güçlü ve kararlıdır. İhtiyaçlarınız, bir kullanabilirsiniz ScrollingDataTable wich suports

  • X-kaydırma
  • y-kaydırma
  • xy kaydırma
  • Güçlü bir Etkinlik mekanizması

İhtiyacınız olan şey için, bence bir tableScrollEvent . API'sı diyor

Sabit bir kaydırma DataTable'da bir kaydırma olduğunda kullanılır.

Her DataTable bir DataSource kullandığından , ScrollingDataTable'ınızı ihtiyaçlarınıza göre doldurmak için verilerini tableScrollEvent ile oluşturma döngüsü boyutu ile birlikte izleyebilirsiniz .

Oluşturma döngüsü boyutu diyor

DataTable'ınızın çok büyük bir veri kümesinin tamamını görüntülemesi gerektiğinde , renderLoopSize yapılandırması, UI iş parçacığının çok büyük tablolarda kilitlenmemesi için tarayıcı DOM oluşturmanın yönetilmesine yardımcı olabilir . 0'dan büyük herhangi bir değer, DOM döngüsünün her döngüde belirtilen sayıda satırı işleyen setTimeout () zincirlerinde yürütülmesine neden olur. Zor ve hızlı kurallar değil, yalnızca genel kurallar olmadığından uygulama başına ideal değer belirlenmelidir:

  • Varsayılan olarak renderLoopSize 0'dır, böylece tüm satırlar tek bir döngüde işlenir. Bir renderLoopSize> 0 ek yük ekler, bu yüzden dikkatli kullanın.
  • Veri kümeniz , kullanıcıların görsel oluşturmada gecikme yaşadıkları ve / veya komut dosyasının askıya alınmasına neden olacak kadar büyükse (satır sayısı X Sütun X sayısı biçimlendirme karmaşıklığı), bir renderLoopSize ayarlamayı düşünün .
  • 50 yaşın altındaki bir renderLoopSize muhtemelen buna değmez. Bir renderLoopSize> 100 muhtemelen daha iyidir.
  • Bir veri kümesi muhtemelen yüzlerce ve yüzlerce satır içermediği sürece yeterince büyük sayılmaz.
  • RenderLoopSize> 0 ve <toplam satırlara sahip olmak, tablonun bir döngüde oluşturulmasına neden olur (renderLoopSize = 0 ile aynıdır), ancak oluşturma sonrası satır şeritleme gibi işlevin ayrı bir setTimeout iş parçacığından işlenmesini de tetikler.

Örneğin

// Render 100 rows per loop
 var dt = new YAHOO.widget.DataTable(<WHICH_DIV_WILL_STORE_YOUR_DATATABLE>, <HOW YOUR_TABLE_IS STRUCTURED>, <WHERE_DOES_THE_DATA_COME_FROM>, {
     renderLoopSize:100
 });

<WHERE_DOES_THE_DATA_COME_FROM> yalnızca tek bir Veri Kaynağıdır . Bir JSON, JSFunction, XML ve hatta tek bir HTML öğesi olabilir

Burada benim tarafımdan sağlanan Basit bir öğretici görebilirsiniz. Unutmayın başka aynı anda DATA_TABLE pluglin destekler tek ve çift tıklama. YUI DataTable size izin verir. Ve dahası, baş ağrısı olmadan JQuery ile bile kullanabilirsiniz

Bazı örnekler görebilirsiniz.

YUI DataTable hakkında istediğiniz başka bir şey hakkında soru sormaktan çekinmeyin.

Saygılarımızla,


3

Ben tür göremiyorum, jqGrid için sanal kaydırma işlevselliğini kullanabilirsiniz:

http://www.trirand.net/aspnetmvc/grid/performancevirtualscrolling

ancak daha sonra, filtreleme ile milyonlarca satır yapılabilir:

http://www.trirand.net/aspnetmvc/grid/performancelinq

Gerçekten "sayfa yokmuş gibi" noktasını göremiyorum, yani ... tarayıcıda aynı anda 1.000.000 satır görüntülemenin bir yolu yok - bu 10MB ham HTML, göremiyorum neden kullanıcılar sayfaları görmek istemez?

Neyse ...


2

aklıma gelen en iyi yaklaşım, her kaydırma veya kaydırma bitmeden önce bazı sınırlama için veri yığınını json formatında yükleyerek. json kolayca nesnelere dönüştürülebilir ve bu nedenle tablo satırları göze batmadan kolayca yapılabilir


İşte böyle. JSON geri gönderilen satır kümesi için bir istek yapılır ... Bunu destekleyen bir javascript istemci yan oluşturucu arıyorum!
Rudiger

Ne??? "İstemci site oluşturucu" nedir? Herhangi bir javascript hala bir ajax çağrısı yapmak gerekir - bu yüzden yine de bazı taşıma formatına yerleşmeniz gerekir. Biraz iş yaparak kaçamazsın. Kimse bunu senin için yapmayacak arkadaşım.
Andriy Drozdyuk

1
AJAX çağrısı yapılması gerektiğini biliyorum; bu kısım basit. İstemci "start = 20 & limit = 20" gibi bir şey ister ve sunucudan 20-39 satırlarını alır (XML veya JSON biçimi). "İstemci tarafı oluşturucu" (benim terminolojim!) Bu istekleri akıllı bir şekilde yapar (örneğin, kullanıcı aşağı kaydırdığında) ve sonuçları sorunsuz bir şekilde sorunsuz bir şekilde oluşturur. Söylediklerinin aksine, başka biri bu işi benim için yaptı. Bu soruya verilen diğer tüm cevaplar bu.
Rudiger

Görünüşe göre hiç kimse sizin için "başka"
yapmadı

1

Açık rico tavsiye . Başlangıçta uygulamak zordur, ancak bir kez yakaladığınızda asla geriye bakmazsınız.




0

DGrid'e bir göz atın:

https://dgrid.io/

Kullanıcıların ASLA milyonlarca veri satırını aynı anda görüntülemesi gerektiğine katılıyorum, ancak dGrid bunları hızlı bir şekilde görüntüleyebilir (her seferinde ekranlı).

Bir fincan çay yapmak için okyanusu kaynatmayın.


fincan çay (link) bulunamadı. :)
Akshay

Şimdi kendi sitesi var :)
ColemanTO
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.