渲染子视图的速度

时间:2016-09-30 20:10:29

标签: jquery backbone.js promise backbone-views

我有一个儿童视图,已添加到报纸的头版。它显示一周中某些日子的电影列表。

它有效,但有一个延迟......它是显示在页面上的最后一项。

电影不属于代表一天的模特。

因此,必须为每个子视图获取一个Movie集合。

以下是我如何设置它。

正如我所说,它只是在寻找如何提高MovieViews在屏幕上加载速度的想法:

initialize: function (args) {
   this.movies = new MovieCollection();
   this.promise = this.fetchMovies(this.model.id);
},

render: function () {

        this.$el.html(this.template(this.model.toJSON()));
        this.renderMovies(this.$('.movieListing'));

  renderMovies: function (el) {
        var self = this;
        $.when(self.promise).done(function() {
            var view = new MovieView({
                model: self.movies,
                el: el
            });

            if (self.movies.length > 0) {
                view.render();
            }
        });
    },

    fetchMovies: function (id) {
        return this.movies.fetch({ url: '/api/theaters/' + id+ '/movies' });
    }
});

谢谢!

0 个答案:

没有答案