backbone.js - Backbone Collection jsonp ajax 结果没有正确生成模型

标签 backbone.js jsonp

http://jsfiddle.net/nf8NM/3/

这是我第一次涉足 Backbone,我只是想从 Dribbble 获取一个 Api 调用。

我正在尝试以最原生的方式来做这件事。然而,它在收集时似乎在做一些有趣的事情。

此时我对实际渲染并不太在意,我只想使用来自 Api 的每个响应的模型正确设置集合。

任何提示和方向都会很棒。我这样做完全错了吗?

最佳答案

不确定你的问题是什么。重写一些你的集合类来分离关注点,我得到了完全有效的模型。

Shot = Backbone.Model.extend({
    initialize:function(opts) {
        console.log("init shot : "+opts.id);
    }
});
ShotsList = Backbone.Collection.extend({
    model: Shot,
    sync: function(method, model, options) {
        var params = _.extend({
            type: 'GET',
            dataType: 'jsonp',
            url: model.url(),
            processData: false
        }, options);

        return $.ajax(params);
    },
    parse: function(response) {
        return response.shots;
    },

    url: function() {
        return "http://api.dribbble.com/players/" + encodeURIComponent(this.player) + "/shots?per_page=18";
    }
});

s=new ShotsList();
s.bind("reset",function(collection) {
    console.log(collection.models);
    console.log(collection.pluck("image_teaser_url"));
});
s.player="jordan";
s.fetch();

关于backbone.js - Backbone Collection jsonp ajax 结果没有正确生成模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8430113/

相关文章:

javascript - Backbonejs、事件聚合和实例化 View

jquery、jsonp 没有成功

jQuery + JSONP 返回数据为空?

node.js - 在 Backbone.js 中创建集合时出现 TypeError : d. 集合未定义错误

backbone.js - 在 Backbone.js 或 Marionette.js 中重复创建和销毁 View 而不创建 "memory leak"

jsonp - 从 wicket 组件获取 HTML 输出数据

jquery - 使用 jQuery 进行跨域基本身份验证

javascript - AngularJS $http 意外的 token 冒号

javascript - handlebars 2.0 运行时出现未知模板对象错误

javascript - config.js 的 requirejs 加载超时(优化)