Skip to content

Instantly share code, notes, and snippets.

@crecotun
Last active September 11, 2015 12:08
Show Gist options
  • Save crecotun/f28018c6d078867ddab5 to your computer and use it in GitHub Desktop.
Save crecotun/f28018c6d078867ddab5 to your computer and use it in GitHub Desktop.
backbone module core
'.source.coffee':
'Core Backbone App':
'prefix': 'bb_module'
'body': '''
define [
'jquery'
'lodash'
'backbone'
'handlebars'
# views
'./views/base.js'
# models
'./models/base.js'
# collections
# templates
'text!./templates/base.html'
], (
$
_
Backbone
Handlebars
# views
BaseView
# models
BaseModel
# collections
# templates
BaseTmpl
) ->
# list of all instances
window.${0:ModuleName} = ${0:ModuleName} =
Views:
Base: BaseView
Models:
Base: BaseModel
Collections: {}
Templates:
Base: Handlebars.compile BaseTmpl
# events bus
${0:ModuleName} extends Backbone.Events
class ${0:ModuleName}.App
constructor: ->
@model = new ${0:ModuleName}.Models.Base()
@view = new ${0:ModuleName}.Views.Base
model: @model
return {
# data
model: @model
view: @view
# methods
close: @close
}
close: ->
@view.close?()
@view.remove?()
return ${0:ModuleName}
'''
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment