0

我的视图模型中有一个可观察的数组。是否可以在推送附加商品后一直订购商品?

例子:

[ { a: 4 }, { a: 1 }, { a: 2 } ];

显示在按属性排序的 UI 上a。所以[ { a: 1 }, { a: 2 }, { a: 4 } ]
然后我从服务器加载一些新项目 - [ { a: 5 }, { a: 3 } ],将它们推送到数组中,数组仍然在 UI 上按顺序显示。是否可以使用 core ko 功能?
提前致谢!

4

1 回答 1

1

每次将数据推送到数组中时,您都可以调用该.sort()方法 - 您不能直接将它们插入到数组的中间(请参阅文档)。

在您的情况下,您可以执行以下操作:

// Todo: insert (push) all inside the observableArray when you retrieved it from the server

// Now sort the data
observableArray.sort(function (left, right) {
    return left.a == right.a ? 0 : (left.a < right.a ? -1 : 1);
});
于 2012-08-03T09:49:32.103 回答