我正在尝试将多个(不同的)JSON 源映射到一个视图模型中,但我似乎无法让它工作。
我创建了一个视图模型:
var viewModel;
我创建了不同的映射选项,如下所示:
var mappingPerformedActions = {
'PerformedActions': {
key: function(data) {
return ko.utils.unwrapObservable(data.Id);
}
}
};
var mappingEntities = {
'Entities': {
key: function(data) {
return ko.utils.unwrapObservable(data.Id);
}
}
};
然后我构建我的 get 函数:
get = function() {
$.getJSON("localhost/urlWhichWorksWithSingleMapping", function(getdata) {
viewModel = ko.mapping.fromJS(getdata, mappingEntities );
});
$.getJSON("localhost/anotherUrlWhichWorksWithSingleMapping", function(getdata) {
ko.mapping.fromJS(getdata, mappingPerformedActions, viewModel);
});
ko.applyBindings(viewModel);
};
get();
然后我尝试循环通过实体
<ul data-bind="foreach: BiztalkEntities">
<li><span data-bind="text: Name"></span></li>
</ul>
这适用于单一来源
请注意,当我只有一个来源时,所有这些都有效,因此 URLS 或其他内容没有错误。我查看了堆栈溢出,但似乎找不到适合我需要的示例,希望您能告诉我我在这里做错了什么!