Görüntüleme modelimde ObserableArray'ım var. ViewModel'i başlattıktan hemen sonra, verileri başarıyla bağlar. O zaman, yapmam gereken şey koleksiyonu sıralamak. Gördüğünüz gibiknockoutjs GözlemlenebilirArray'ler ve sıralama işlevi: UI güncelleştirilmedi
$.each(vm.searchResults(), function (i, property) {
console.log(property.Name());
});
vm.searchResults().sort(function (a, b) {
return a.Name().toLowerCase() > b.Name().toLowerCase() ? 1 : -1;
});
$.each(vm.searchResults(), function (i, property) {
console.log(property.Name());
});
, ben çıkış konsoluna elemanın adı öncesi ve ayırma sonrası düzeni görmek için. Sıralama iyi çalışıyor. Sorun, kullanıcı arayüzü güncellemesiyle ilgilidir. Her nasılsa, kullanıcı arayüzü güncellenmez.
Sonra UI o ya da değil yanıt verecektir görmek için aşağıdaki kodla diziden bir kaydı kaldırmak için deneyin:
vm.searchResults().shift();
UI aynı kalır ve tekrar güncelleme vermedi. Burada sorun ne olurdu?
Düzenleme: burada da http://jsfiddle.net/tugberk/KLpwP/
aynı sorun: Burada
yanı örnek bir durumdur.
Düzenleme: http://jsfiddle.net/tugberk/KLpwP/16/ Ama Önce denedim olarak işe yaradı neden hala emin değilim: Bu örnekte gösterildiği gibi
Ben sorunu çözüldü.