diff options
author | Thomas Davis <thomasalwyndavis@gmail.com> | 2012-04-28 13:01:31 +1000 |
---|---|---|
committer | Thomas Davis <thomasalwyndavis@gmail.com> | 2012-04-28 13:01:31 +1000 |
commit | 663d44f98d52a8153d1259e90f009d5f0a6d4845 (patch) | |
tree | 1fd791d7ddcbfd137b6d9302ccb4f1f0f6e6bb71 /examples/infinite-scroll/js/vm.js | |
parent | ab807ffe21c6439f2cdd5f3d3df8cd59f9cb12a6 (diff) | |
download | backbonetutorials-663d44f98d52a8153d1259e90f009d5f0a6d4845.zip backbonetutorials-663d44f98d52a8153d1259e90f009d5f0a6d4845.tar.gz backbonetutorials-663d44f98d52a8153d1259e90f009d5f0a6d4845.tar.bz2 |
infinite scroll
Diffstat (limited to 'examples/infinite-scroll/js/vm.js')
-rw-r--r-- | examples/infinite-scroll/js/vm.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/examples/infinite-scroll/js/vm.js b/examples/infinite-scroll/js/vm.js new file mode 100644 index 0000000..0bcf4c1 --- /dev/null +++ b/examples/infinite-scroll/js/vm.js @@ -0,0 +1,33 @@ +// Use this as a quick template for future modules +define([ + 'jquery', + 'underscore', + 'backbone', + 'events' +], function($, _, Backbone, Events){ + var views = {}; + var create = function (context, name, View, options) { + // View clean up isn't actually implemented yet but will simply call .clean, .remove and .unbind + if(typeof views[name] !== 'undefined') { + views[name].undelegateEvents(); + if(typeof views[name].clean === 'function') { + views[name].clean(); + } + } + var view = new View(options); + views[name] = view; + if(typeof context.children === 'undefined'){ + context.children = {}; + context.children[name] = view; + } else { + context.children[name] = view; + } + Events.trigger('viewCreated'); + return view; + } + + + return { + create: create + }; +}); |