使用骨干中的rest api获取集合

时间:2016-09-14 12:32:40

标签: backbone.js

在那个休息api url中,我得到一个json数组并使用EmployeeList集合获取它。使用fetch()只调用其余的api。如果我没有使用fetch,则其余的api调用不起作用,它使用api-code中的日志进行测试。在获取时我获得了所有细节,但是我收到了错误,

Uncaught TypeError: this.model is not a constructor   backbone-min.js:24 

我是骨干的新手。是什么错误,为什么会发生这个错误。我的代码如下,

var app = {};
app.Employee = Backbone.Model.extend();
app.employee = new app.Employee();
app.EmployeeList = Backbone.Collection.extend({
    model: app.employee,
    url:'/api/employ',
    parse: function(response) {
        return response;
    }
})
app.employeeList = new app.EmployeeList();
app.employeeList.fetch();
app.AppView = Backbone.View.extend({
    el: '#emp',
    initialize: function(){
        this.render();
        console.log(app.employeeList);
    },
    render: function(){
        this.$el.html('sathish');
    }
});
app.appView = new app.AppView();

2 个答案:

答案 0 :(得分:1)

更改

app.EmployeeList = Backbone.Collection.extend({
    model: app.employee,
    .....
})

app.EmployeeList = Backbone.Collection.extend({
    model: app.Employee,
    ...
})

模型参数应该是app.Employee的模型类(js中的构造函数)。

答案 1 :(得分:0)

您应该提供app.Employee()而不是new app.Employee()作为集合的模型参数。