was wondering how add model view when view has been instantiated? i've created switch statement make correct view once done want bind model? i've tried set
, view.model = model
no success?
js
var type = 'typeone'; var mymodel = backbone.model.extend(); var viewtypeone = backbone.view.extend(); var viewtypetwo = backbone.view.extend(); var model = new mymodel({ 'name': 'james bond' }); var newview; switch (type) { case 'typeone': newview = new viewtypeone(); case 'typetwo': newview = new viewtypetwo(); } newview.model = model; console.log('after', newview.model.tojson());
i'm not sure if/how can bind model instantiated view, know how can solve problem in 1 of several ways:
pass model parameter when instantiate view in
switch
:var model = {model: this.model}; var newview; switch (type) { case 'typeone': newview = new viewtypeone(model); case 'typetwo': newview = new viewtypetwo(model); }
pick view type in
switch
, , instantiate model:var viewtype; switch (type) { case 'typeone': viewtype = viewtypeone; case 'typetwo': viewtype = viewtypetwo; } var newview = new viewtype({model: this.model});
use map link names types, , rid of
switch
:var views = { 'typeone': viewtypeone, 'typetwo': viewtypetwo } var newview = new views[type]({model: this.model});
Comments
Post a Comment