2012-07-06 44 views
0

在knockout.js网站的文件,他们说,当你的数据从服务器返回的你可以这样做部分映射:knockout.js从JSON

// Every time data is received from the server: 
ko.mapping.fromJS(data, viewModel); 

我想数据部分映射回进入我的对象模型。那可能吗?

我有一个viewModel.jobs [I] .JobType子对象,所以我喜欢做这样的事情:

ko.mapping.fromJS(data.jobType, viewModel.jobs[i].JobType); 

...这意味着我想只是地图的jobType从服务器的结果到这个特定作业的JobType字段。

...还牢记:

// does not work because viewModel.jobs[i].JobType() is not a function. 
viewModel.jobs[i].JobType(data.JobType); 
+2

难道你不想'viewmodel.jobs()[i]',因为'作业'可能是可观察的? – Tyrsius 2012-07-06 21:47:26

+0

我只是从服务器的回应中找回JobType属性的值。我认为回归整个工作更有意义? – 2012-07-06 21:48:05

+0

另外,我没有使用viewModel.jobs()[i],我只是直接引用了这个工作。 – 2012-07-06 21:50:28

回答

1

这工作:

ko.mapping.fromJS(data.job,viewModel.jobs [1]);

+0

不错的工作,很高兴我可以帮忙=) – Tyrsius 2012-07-06 22:06:52