
js.RT.Channel.observableArray.js Maven / Gradle / Ivy
The newest version!
/**
* Generate linked observable array
*/
RT.Channel.prototype.observableArray = function(changeId, cfg){
if (typeof(ko) === "undefined")
throw "knockoutjs required for ObservableArray feature";
var o = ko.observableArray();
//Register observable listener
this.on(changeId, function(e){
switch(e.op){
case "INIT":
e.item.forEach(function(item){
o.push(item);
});
break;
case "APPEND":
o.push(e.item);
break;
case "ADD":
//TODO
break;
case "REMOVE":
o.remove( o()[e.index] );
break;
case "REPLACE":
//TODO
break;
case "CLEAR":
o.removeAll();
break;
}
});
return o;
};
© 2015 - 2025 Weber Informatics LLC | Privacy Policy