Sorting 为其中一个模板排序ObservalArray

Sorting 为其中一个模板排序ObservalArray,sorting,knockout.js,Sorting,Knockout.js,我有以下视图模型: 函数实例(id,FirstName){ $。扩展(此{ id:ko.可观察(id | |‘), 名字:ko.可观察(名字| |“”) }); } 我在一个可观察的array中有一些例子: ko.observearray([新实例(…),新实例(…),…] 使用以下模板:

我有以下视图模型:

函数实例(id,FirstName){
$。扩展(此{
id:ko.可观察(id | |‘),
名字:ko.可观察(名字| |“”)
});
}
我在一个可观察的array中有一些例子:

ko.observearray([新实例(…),新实例(…),…]
使用以下模板:

    在第一个
    ul
    中,我需要渲染没有排序的模板,在第二个渲染中,我需要按FirstName排序


    有人能解释一下怎么做吗?

    一个选项是添加一个表示排序数组的DependentToServable。它看起来像:

    viewModel.sortFunction = function(a, b) {
            return a.FirstName().toLowerCase() > b.FirstName().toLowerCase() ? 1 : -1;  
    };
    
    viewModel.sortedInstances = ko.dependentObservable(function() {
        return this.instances.slice().sort(this.sortFunction);
    }, viewModel);
    
    因此,对每个项的FirstName可观测值进行不区分大小写的比较。返回已排序的数组(切片(0))的副本(不希望对实际数组排序)

    此处示例:


    关于淘汰版2.0及更高版本的注意事项:ko.dependentObservable现在是ko.computed。请参见

    Tnx,RP Niemeyer。这就是我想要的:)如此简单。。。明亮的例如,谢谢!