未捕获的ReferenceError:未定义高度 - Backbone.js

时间:2016-02-18 00:18:59

标签: javascript jquery html backbone.js

首先,我是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;
    }
});

1 个答案:

答案 0 :(得分:1)

我认为问题出在这里

var view = new SectionView({model: Sections});

Sections是一个集合,但你告诉他们这是一个模型,因此存在冲突。