Я занимаюсь созданием своего первого магистрального приложения с использованием Node/express и Mongodb. Приложение представляет собой онлайн-меню еды и систему заказов, которая собирает все данные из mongo при загрузке первой страницы и помещает их в коллекцию Backbone. Я использую функцию инициализации в магистральном маршрутизаторе для извлечения () данных и помещения их в коллекцию. Моя проблема в том, что индексный маршрутизатор загружается до завершения функции Initialize. Я подтвердил, что функция инициализации работает правильно, потому что я могу получить доступ к коллекции в консоли браузера.
Я могу ошибаться, но вот упрощенная версия моего маршрутизатора:
GDB.Router = Backbone.Router.extend ({
routes: {
'': 'index',
'drinks': 'drinks'
},
meals: {},
initialize: function() {
meals = new GDB.Collections.Meals
meals.fetch();
},
index: function() {
var mealsView = new GDB.Views.Meals ({collection: meals});
$('#GDBContainer').append(mealsView.render().el);
},
drinks: function() {
var drinksView = new GDB.Views.Meals ({collection: meals.byCategory('drinks')});
$('#GDBContainer').append(drinksView.render().el);
}
});