我正在尝试了解Ember.CollectionView的工作原理,并且在DOM中显示ArrayController的内容时遇到了基本问题。这是我的小jsfiddle实验,所以你可以自己看看。这是咖啡脚本:
window.App = Ember.Application.create()
window.App.initialize()
App.Item = Em.View.create
tagName:'li'
willInsertElement: () ->
console.log "I **WILL** indert the element", this.$()
didInsertElement: () ->
console.log "I **DID** insert the element", this.$()
template: Ember.Handlebars.compile("~~ {{view.content.title}} ~~")
App.items = Em.ArrayController.create()
App.items.set('content',[
Em.Object.create({title:"AN"}),
Em.Object.create({title:"Epic"}),
Em.Object.create({title:"View"})
])
App.epicView = Ember.CollectionView.create
classNames: ['epic-view']
contentBinding: 'App.items'
itemViewClass: 'App.Item'
App.epicView.appendTo('body')
正如您在该小提琴的输出中看到的那样,我无法弄清楚如何访问和显示列表中对象的标题。当我使用调用将视图附加到正文时App.epicView.appendTo('body')
它似乎遍历了三个对象,但没有打印任何内容。
任何想法我在这里错过了什么?
ps:我正在使用余烬 1.0pre
我会简单地做这样的事情:http://jsfiddle.net/Sly7/nevW2/67/
声明视图(使用 extend)而不是实例化它们(使用 create)