2011-01-04 30 views
5

Bu teknoloji küçük şablonlar için tasarlandı mı veya büyük veri kümelerini görüntülemek için kullanılabilir mi? 1000 satır ve 20 sütun içeren tablolar gibi?Jquery Şablonları performans

Bu gibi durumlarda performans ölçeği nasıldır? Verileri görüntülemek için ideal ve temiz yol, Web Hizmetinden JQuery Şablonuna döndürülen JSONified verilerini beslemektir. Teoride şık görünüyor ama büyük veri setleri için pratikte uçuyor mu?

cevap

5

Tarayıcıda, oluşturmayı yapan çok şey var. IE6 oldukça yavaş olabilir (ancak 1.000 satırlık HTML biçimlendirme satırlarının aktarılması ve bu belgeye enjekte edilmesinin hızlı olmayacağı gibi).

Burada a jsperf benchmark that generates 1,000 rows of 10 columns and renders it. 1000 satırını Chrome 9'da işlemek için 200-250ms alıyorum.

Daha önemli olan soru şu: Gerçekten neden dünyada 1.000 satır görüntülüyorsunuz? Bundan daha iyi UX alternatifleri vardır.

+0

Aslında yaklaşık 600 göstereceğim. Tüm satırları özel olarak çağrı yapmadan bir kerede göstermem istendi. SO'daki bir kişi, web servisinden alınan verileri önbelleğe almayı ve kullanıcı tarafından kaydırıldıkça parçalar halinde göstermeyi önerdim. Jquery için oldukça yeni ve bunu gösteren birçok örnek görmedim. – sarsnake

+0

Kullanıcı kaydırırken güncellemenin karmaşıklığına bile gerek duymazdınız. Önce görünür veri kümesini oluşturup hemen ardından ~ 100 satır yığınlarında verilerinizin geri kalanını oluşturmaya ve eklemeye başlayın. Daha da iyisi, web hizmetinden sadece ilk görünen satır kümesini talep ederek başlayabilir, ardından ilk biti işledikten sonra kalanını hemen isteyin. Bu da bir şey görünene kadar toplam zamanı hızlandırmalıdır. Bunu yapmanın temel dezavantajı, daha fazla satır eklendikçe kaydırma çubuğunun boyutunu sürekli olarak etkileyecektir. –

+0

Teşekkürler Dave, ama bunun nasıl işe yarayacağını bilmiyorum, Javascript tek iş parçacığı değil mi? Benim için gecikme, web servis tarafında değil, JSON verisi (web servisinden) tarafındaki döngüde oluyor ... o zaman neden birkaç kez web servisini arayayım ki? Senin yolun tarayıcıyı kilitlemez mi? – sarsnake

İlgili konular