javascript - Taking in data from a function using _.clone(this.model.attributes) -
my issue have view , utils function trying connect model data.
in view; have function:
getcalculateddata: function() { var calculateddata = utils.calculateamounts(_.clone(this.model.attributes)) }, this retrieves model data key/value object. in utils function want retrieve data can use calculations. want make function this:
calculatedamounts: function() { //retrieve data }, how retrieve values. lets firstname, lastname, , state in model retrieving in view. create variable hash holds them this:
calculatedamounts: function() { firstname : this.model.get('firstname'); //etc }, how retrieve values out of object?
thanks
i not sure understand question, in calculatedamounts method, why don't use variable passed when called method in getcalculateddata?
your code this:
getcalculateddata: function() { var calculateddata = utils.calculateamounts(this.model) }, calculatedamounts: function(mymodel) { firstname : mymodel.get('firstname'); //etc }, also, if going modify model in calculatedamounts , not want modifications mirror outside calculatedamounts scope, should deep copy model object.
1 common way use extend() method of jquery. like:
calculatedamounts: function(mymodel) { var deepcopiedmodel = $.extend(true, {}, mymodel); firstname : deepcopiedmodel.get('firstname'); //etc },
edit:
also, avoid passing this.model.attributes calculatedamounts() method if want use get() method in it.
this.model.attributes object object, , not backbone.model object.
the .get() call if pass this.model.attributes param method part of object's prototype, , not method part of backbone.model's prototype.
Comments
Post a Comment