view_model = kb.viewModel(model) kb.utils.release(view_model); view_model = null todos = kb.collectionObservable(collection) kb.utils.release(todos); todos = null
var view_model = kb.viewModel(model); kb.utils.release(view_model); view_model = null; var todos = kb.collectionObservable(collection); kb.utils.release(todos); todos = null;
view_model = kb.viewModel(model) same_model = kb.utils.wrappedModel(view_model)
var view_model = kb.viewModel(model); var same_model = kb.utils.wrappedModel(view_model);
model = new Backbone.Model({name: 'Bob'}) view_model = wrapped_name: kb.defaultWrapper(kb.observable(model, 'name'), "(no name)') # view_model.wrapped name: Bob kb.utils.setToDefault(view_model) # view_model.wrapped name: (no name)
var model = new Backbone.Model({name: 'Bob'}); var view_model = { wrapped_name: kb.defaultWrapper(kb.observable(model, 'name'), "(no name)') }; // view_model.wrapped name: Bob kb.utils.setToDefault(view_model); // view_model.wrapped name: (no name)
Please note:classes start with a capital letter (eg. kb.CollectionObservable) whereas factory methods start with a lower case letter (eg. kb.collectionObservable)
todos = new kb.CollectionObservable(new Backbone.Collection([{name: 'name1'}, {name: 'name2'}])) kb.utils.observableInstanceOf(todos, kb.CollectionObservable) # true kb.utils.observableInstanceOf(todos, kb.collectionObservable) # false (factory function not class!)
var todos = new kb.CollectionObservable(new Backbone.Collection([{name: 'name1'}, {name: 'name2'}]))' kb.utils.observableInstanceOf(todos, kb.CollectionObservable); // true kb.utils.observableInstanceOf(todos, kb.collectionObservable); // false (factory function not class!)
class ShortDateLocalizer extends kb.LocalizedObservable constructor: (value, options, view_model) -> super; return kb.utils.wrappedObservable(this)
var ShortDateLocalizer = kb.LocalizedObservable.extend({ constructor: function(value, options, view_model) { kb.LocalizedObservable.prototype.constructor.apply(this, arguments); return kb.utils.wrappedObservable(this); } });