以不同的方式对相同的 observableArray 进行排序
Sort the same observableArray different ways
我有一个具有可观察属性的对象的 observableArray。我想两次显示这个数组,每次都有不同的排序顺序。这可能吗?
我已经尝试保留一个计算的 属性 来获取数组,对其进行排序并 returns,但是这对原始数组进行了排序并且没有按照我的要求进行。
function ViewModel(){
var self = this;
self.Items = ko.observableArray([]);
self.ItemsOrdered = ko.computed(function(){
var i = self.Items();
return i.sort(function(left,right){
return 1;
});
});
}
查看这个 jsfiddle:http://jsfiddle.net/qhg8t4je/1/
在这里我颠倒了数组,希望在第一个列表中看到 A 的值按顺序在第二个列表中看到 B 的值按顺序排列,但是两个列表似乎都被颠倒了。
我找不到任何维护(或只是显示?)两种不同排序顺序的建议,我只能找到维护一个(就像我的 jsfiddle 所做的那样)的建议。
.sort
更新原始数组。克隆数组(例如 .slice()
)。
我有一个具有可观察属性的对象的 observableArray。我想两次显示这个数组,每次都有不同的排序顺序。这可能吗?
我已经尝试保留一个计算的 属性 来获取数组,对其进行排序并 returns,但是这对原始数组进行了排序并且没有按照我的要求进行。
function ViewModel(){
var self = this;
self.Items = ko.observableArray([]);
self.ItemsOrdered = ko.computed(function(){
var i = self.Items();
return i.sort(function(left,right){
return 1;
});
});
}
查看这个 jsfiddle:http://jsfiddle.net/qhg8t4je/1/ 在这里我颠倒了数组,希望在第一个列表中看到 A 的值按顺序在第二个列表中看到 B 的值按顺序排列,但是两个列表似乎都被颠倒了。
我找不到任何维护(或只是显示?)两种不同排序顺序的建议,我只能找到维护一个(就像我的 jsfiddle 所做的那样)的建议。
.sort
更新原始数组。克隆数组(例如 .slice()
)。