首先,我是Backbone.js的新手,我正在使用this example来学习。
我正在尝试从文本输入中获取值并从输入中创建模型。应加载模板,并且每个模型中的属性params[:comment][:date]
应显示在同一HTML上。
我能够创建模型并将它们添加到集合中,因为我在console.log(Sections)中看到height
。但是,(我猜)当我尝试加载模板时,它给出了错误:'未捕获的ReferenceError:未定义高度'。我在想如果我的属性不正确。
任何帮助将不胜感激!提前谢谢。
以下是模板:
n {length: 105, models: Array[105], _byId: Object}
型号:
<script type="text/template" id="section-template">
<div class="view">
<label><%- height %></label>
<label><%- color %></label>
<a class="destroy"></a>
</div>
</script>
模特集:
var Section = Backbone.Model.extend({
defaults: function(){
return {
height: 200,
color: ''
};
}
});
模型视图&amp;事件行动:
var SectionList = Backbone.Collection.extend({
model: Section,
localStorage: new Backbone.LocalStorage("sections-backbone")
});
var Sections = new SectionList;
申请:
var SectionView = Backbone.View.extend({
tagName: "li",
template: _.template($("#section-template").html()),
initialize: function() {
},
render: function() {
this.$el.html(this.template(this.model.toJSON()));
return this;
}
});
答案 0 :(得分:1)
我认为问题出在这里
var view = new SectionView({model: Sections});
Sections
是一个集合,但你告诉他们这是一个模型,因此存在冲突。