在应用绑定最佳实践之前,使用json数据初始化Knockout ViewModel

ebr*_*lil 5 javascript knockout.js

我有一个简单的knockoutjs ViewModel.但在我将该模型的绑定应用到我的视图之前,我首先要初始化它,或者使用一些我将通过AJAX从服务器获取的数据(JSON格式)设置数组值.

我知道我可以创建我的模型的对象,制作ajax请求然后初始化我的模型数组.像这样:

function AppViewModel() {
    var self = this;
    self.Servers = ko.observableArray([]);//this one 'll be filled by data from server
}
var MyViewModel = new AppViewModel();
MyViewModel.Servers = ko.mapping.fromJSON(json_data);//make ajax call to get json_data.
ko.applyBindings(MyViewModel);
Run Code Online (Sandbox Code Playgroud)

这是好的做法还是有更好的做法.

Jer*_*oen 1

对我来说似乎是一个很好的方法,至少根据您提供的上下文。映射插件的文档有一个关于 AJAX 请求的部分,最后还有一个“高级”部分,可帮助您跟踪服务器对象的键,以便更轻松地将更新发回服务器。

另一个好的来源是加载和保存教程。它不使用映射插件,显示了通过 AJAX 请求处理 CRUD 操作的更基本的内容。