我想要一个ko.observableArray
维护自己的排序顺序的排序顺序,其中排序顺序取决于每个项目的计算属性。
我希望这个工作:
var threads = ko.observableArray().extend({ sorted: Thread.desc });
我有一个使用扩展器的尝试jsfiddle,但是对子 observable 的更改不会导致重新排序。
这是 ko 应该如何工作,还是我错过了一步?
编辑:原来我有依赖错误。更改messages
不会标记threads
为已更改,即使preview
在 sort 方法中调用,所以它当然不会排序。
仍然通过依赖孩子来制定一个简洁的解决方案来维护排序列表。