微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

KnockoutJS使用Ajax填充多个视图模型的最佳实践

我想知道是否有人有关于在屏幕上填充多个视图模型的任何建议.我有

a)具有任务列表的视图模型

b)具有用户列表的视图模型

我在2 x ajax成功(单独的ajax调用)中填充这些内容,例如:

success: function (data) {
    masterVM.User = ko.mapping.fromJS(data,mapping);
    ko.applyBindings(masterVM); 
}

/* another ajax call: */
success: function (data) {
    masterVM.Task = ko.mapping.fromJS(data,mapping);
    ko.applyBindings(masterVM); 
}

并且目前正在调用每个ajax成功调用.

我希望我的问题清楚简洁.如有需要,请询问更多细节.

问候
菲尔

解决方法

我们目前通过在单个Ajax调用中将所有数据发送到我们的页面来处理这个问题,然后应用ko.mapping将数据映射到主视图模型上的视图模型.

我们开始就像你一样进行两次调用,但决定减少正在进行的http请求的数量会更好,这就是为什么我们将数据集组合成一个单独的分层对象结构,并且它工作得很好.

这个问题和随后的答案包含了我们正在采取的方法的片段:
Map JSON data to Knockout observableArray with specific view model type

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐