Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Representing existing HTML as Backbone.js data structures in CoffeeScript
- $ ->
- class Item extends Backbone.Model
- name: null
- class ItemList extends Backbone.Collection
- model: Item
- class ItemView extends Backbone.View
- tagName: 'li'
- initialize: =>
- @model.bind('change', this.render)
- @model.view = this
- events:
- 'click' : 'clicked'
- clicked: ->
- console.log 'clicked'
- render: =>
- this
- class ItemListView extends Backbone.View
- el: $('ul#test')
- initialize: =>
- $('li', @el).each(@addItem)
- addItem: (item) ->
- item = new ItemView({ el: item })
- render: =>
- this
- Items = new ItemListView
- <ul id="test">
- <li>Hi thar</li>
- <li>Yeah</li>
- <li>OK</li>
- </ul>
- addItem: (item) ->
- model = new ItemView({
- el: item,
- model: new Item({
- // assuming you might want the list item text
- // in the model data
- text: $(item).text()
- })
- })
- class ItemListView extends Backbone.View
- initialize: (opts) =>
- opts.items.each(@addItem)
- // ...
- Items = new ItemListView({ items: $('ul#test li') })
Add Comment
Please, Sign In to add comment