我正在开发一个Web应用程序,并决定使用knockout.js来管理客户端UI和绑定。到目前为止真的很喜欢它,但是有一些关于ko.observables的问题。我的初始数据有效载荷如下:
{
clients: [{id:1, fname:'foo', lname:'bar', email:'...', ...}, ...]},
appointments: [{...appointment object...}, ...]
}
上面数据中的任何对象都可以容纳大量数据,很容易包含上面几百个对象,每个对象包含10-15个属性。目前,在我的应用程序init上,我正在做类似的事情:
$.each(clients, function (idx, client) {
$.each(client, function (property, value) {
client[property] = ko.observable(value);
});
client[idx] = client;
});
self.clients = ko.observableArray(clients);
这似乎有用,但似乎也有很多开销,而且我注意到当我的应用程序处于初始化步骤时没有大量延迟(不需要ajax,数据在渲染时会加载到页面中)。有没有像这样处理大型数据集的模式?因为可以编辑上述任何数据对象,所以我认为它们应该是可观察的。感谢您的任何指示!