Özetle: Google Chrome, Firefox, Safari vb. Yazılımlarda kesinlikle iyi çalışan bir KO kodlu bir sayfam var. Ancak, Internet Explorer'da performans gitti. IE10, IE11'i denedim. Yaklaşık 150 satır oluşturmak için 10 ila 25 saniye sürer. Knockoutjs, Internet Explorer'da oldukça yavaş çalışır
Detaylar: There sayfa onların görevleri gösterilmektedir kullanıcılarına özel bir çalışma kuyruğu temsil eder. Gereksinim bu sayfada herhangi bir sayfalama kullanmamaktır. Tablonun her sırasının gösterilmesi için en az bir düzine varyantı vardır (bağlantılar, düğmeler, girişler, css şekillendirme, kullanıcı olaylarını işleme, özel js eklentileri, vb.). Ürün üzerindeki ortalama satır sayısı 100-200 + 'dır. Kullanıcı farklı filtreler ve sıralamalar uygulayabilir.
- şablonu kullanarak sayısını azalttı, (mümkünse pureComputed, olarak değiştirildi) bilgisayarlı özelliklerin sayısını azalttı:
şeyler zaten denedim ve ve bağlayıcıları (profilleyiciye göre en çok zaman harcayan işlerdir) - 'u kullanıyorum
- nakavt-fast-foreach özel bağlama (https://github.com/brianmhunt/knockout-fast-foreach)
kullanmaya çalıştı mümkün, hafıza
profilli sızıntılarını ortadan kaldırmak için IE ve Chrome araçlarıyla kod profilli ko.bindingReport.js (https://gist.github.com/kamranayub/65399fa247a6c182bc65)
Yukarıda belirtilen yaklaşımlar, Chrome'da neredeyse iki kat daha hızlı kod ayarladı (ko.bindingReport.js). Ama IE hala çok yavaş - render için yaklaşık 10 saniye.
Internet Explorer:
Millet, herhangi bir fikir?
kullandığınız KO sürümü https://github.com/mbest/knockout-table? –
@f_martinez ko-3.4.0 – godspeed
Yayınınız iyi yazılmış ve kolay anlaşılır. Ama eğer bize yardım edebilecek olmamızın şansını en üst düzeye çıkarmak istiyorsanız, bir repro'ya ihtiyacımız olacak. Kök nedeni olana kadar bazı bifürkasyon kullanmaya çalışın ve test verileriyle bazı örnek kodlar gönderin. – Jeroen