我試圖更新以紅色顯示的棕褐色以反映一個項目重新定位時每個項目在observableArray中的位置。你可以在這裏看到我目前的代碼:http://jsfiddle.net/BV87N/Knockout JS - 在observableArray中修改項目的屬性
這不像我期望的那樣行事。我有一種感覺,因爲數組內部的項目和它們的屬性本身是不可觀察的。
但我不太清楚如何讓這個工作。
ko.bindingHandlers.sortable.afterMove = function() {
self.adjustOrder();
};
self.adjustOrder = function() {
for (var i = 0, j = self.items().length; i < j; i++) {
self.items()[i].sortOrder = i;
};
};
聽起來像一個很好的初始假設。測試它通過使sortOrder可觀察,然後*更新*相同的可觀察。儘管使sortOrder成爲一個依賴於items可觀察數組的計算可觀察值可能更有意義。 – user2864740