javascript - Extend Coffeescript subclass function from parent in marionette -
i've got "formview" class in marionette application sets lot of things form submissions around app. use every time there form. i've got helpers want pass every form template via templatehelpers
method, want able add additional templatehelpers
in children. so:
class views.formview extends marionette.itemview templatehelpers: -> helpers: marionette.concerns.helpers class views.newuser extends views.formview templatehelpers: -> variable: @something
i want able access both @variable
, @helpers
template newuser
. additionally, know how handle (via _.extends
) if templatehelpers
object, need function.
is possible? , if so, how?
in backbone, when inherit class, backbone give subclass __super__
property (double underscore @ both ends) prototype of parent class. within views.newuser
class, can prototype via view.newuser.__super__
. then, can call templatehelpers
on object. here's how did (live example @ jsbin):
views = {} class views.formview extends marionette.itemview templatehelpers: -> helpers: "parent value" loghelpers: -> console.log @templatehelpers() class views.newuser extends views.formview templatehelpers: -> variable: "child value" loghelpers: -> console.log @templatehelpers() console.log views.newuser.__super__.templatehelpers() formview = new views.formview() formview.loghelpers() // { helpers: "parent value" } newuser = new views.newuser() newuser.loghelpers() // { variable: "child value" }, { helpers: "parent value" }
you use _.extend
extend 1 other; maybe this:
initialize: -> @helpers = _.extend @templatehelpers(), views.newuser.__super__.templatehelpers()
Comments
Post a Comment