Reputation: 35
I am having issue of returning the child node, seems like it does not want to bind.
Here is the jsFiddle http://jsfiddle.net/gnpoe6a6/2/
var viewModel = {
model: ko.mapping.fromJS(data),
people: ko.mapping.fromJS([]),
loadInitialData: function() {
ko.mapping.fromJS(data, dataMappingOptions, viewModel.people);
}
};
Upvotes: 0
Views: 434
Reputation: 6045
You should be doing something like this .
View Model :
var viewModel = function(data){
this.name =ko.observable();
this.array=ko.observableArray();
ko.mapping.fromJS(data, mapping,this);
this.loadInitialData=function(){
this.array(ko.mapping.fromJS(data, mapping,this).TM1ChoreProcessRel());
console.log(this.array());
}.bind(this);
};
var data = {//you json Data};
var Person = function(data) {
this.ID = ko.observable();
this.Name = ko.observable();
this.ParemeterValues = ko.observable();
ko.mapping.fromJS(data, mapping, this)
};
var mapping = {
create:function(options){
return new Person(options.data);
},
'TM1ChoreProcessRel': {
create: function(options) {
return ko.mapping.fromJS(options.data);
}
}
}
ko.applyBindings(new viewModel(data));
Wokring fiddle here
Upvotes: 1