这是我的javascript,它抓取数据并调用映射:
function loadData() {
currentViewModel.isLoading(true);
$.get('/api/myevents/' + eventId, null, function (data) {
var details = ko.mapping.fromJS(data);
currentViewModel.eventDetails(details);
});
};
var viewModel = function () {
var _self = this;
this.eventDetails = ko.observable(null);
this.isLoading = ko.observable(false);
this.addShow = function () {
addShowDialog();
};
};
var currentViewModel = new viewModel();
ko.applyBindings(currentViewModel);
loadData();
在我将数组添加到返回的数据之前,似乎工作正常。由于一些奇怪的原因,它不会被淘汰映射。
我附加了映射两侧的对象的屏幕截图。一般来说,我是淘汰赛的新手,我错过了一些基本的东西吗?
感谢。
答案 0 :(得分:3)
您是否在Shows: Object[0]
和length: 0
判断失败?如果您查看_latestValue
,您会看到Array[5]
。数组映射到ObservableArray
,这是一个函数。在这种情况下,您必须调用函数 - Shows()
来访问内部的实数数组。
这是一个小提琴,表明数组映射工作正常:
http://jsfiddle.net/jearles/VyH6y/
您可以使用此示例来映射到您的确切方案。