在许多教程中,我看到人们这样做:
view = new Raffler.Views.EntriesIndex(collection: @collection)
$('body').html(view.render().el)然后在EntriesIndex看来,他做到了:
render: ->
@$el.html(@template())我认为对于@$el,它是这样说的:嘿,在父元素(在本例中是body)中呈现这个模板,...but它不工作,也不显示anything...If,我使用$('body').html(@template()),所有的工作都很好。Now...why用户在教程中使用@$el (我在2-3个教程中见过)?
发布于 2015-01-28 08:00:33
在Backbone中,视图通常存储对其元素的引用,并封装在jQuery中。这通常被命名为this.$el。
$符号表示这不是一个简单的DOM元素,而是一个完整的jQuery实例。这意味着你可以调用像$el.find()和$el.children()这样的方法。
在CoffeeScript中,@是this的快捷方式。所以@$el的意思就是this.$el。
https://stackoverflow.com/questions/28150674
复制相似问题