У меня есть Marionette.LayoutView
, который вызывает коллекцию магистрали, извлекает данные и отображает их на основе ответа. Теперь проблема, с которой я столкнулся, заключается в том, что эта коллекция должна получать данные с двух разных конечных точек, обе должны быть независимыми, а затем возвращать объединенный результат. Ниже мой код:
My Marionette.LayoutView
var View = Marionette.LayoutView.extend({
template: _.template(some.html),
regions: {
div1: '[data-region="div1"]',
div2: '[data-region="div2"]',
},
initialize: function () {
this.collection = new MovieCollection();
},
onRender: function () {
if (this.collection.length) {
this.div1.show(new TopMoviesByLikesView({
collection: this.collection,
movieCount: 10,
}));
this.div2.show(new TopMovieByRatingsView({
collection: this.collection,
movieCount: 10,
}));
}
},
});
module.exports = AsyncView.extend({
ViewConstructor: View,
});
My Collection
module.exports = Backbone.Collection.extend({
model: TopMovieModel,
initialize: function (response) {
let movieCollection = [];
let movieSourceOne = new TopMovieFromSourceOne();
movieSourceOne.fetch({
success: function (collection, response) {
movieCollection = [...movieCollection, ...response.data];
},
error: function (collection, response, options) {
console.info('~ Response::ERROR', collection, response, options);
}
});
let movieSourceTwo = new movieSourceTwo();
movieSourceTwo.fetch({
success: function (collection, response, options) {
movieCollection = [...movieCollection, ...response.data];
},
error: function(collection, response, options) {
console.info('~ Response::ERROR', collection, response, options);
}
});
this.collection = movieCollection;
},
Я получаю ошибку A “url” property or function must be specified
есть ли способ, где Я могу сделать это без использования URL-адреса в коллекции магистрали? Примечание: я хочу, чтобы две конечные точки оставались независимыми, так как я не хочу, чтобы сборник завершился сбоем в случае сбоя основного API.