All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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