2013-05-15 2 views
0

У меня есть некоторые базовые коллекции, которые должны быть загружены в мое приложение при загрузке (загрузочные данные). Эти данные статической информация, которые используются во всем мире для заполнения списков, выпадающие и т.д.Магистральная множественная выборка данных при загрузке приложения?

Что является лучшим способом, чтобы загрузить эти данные и убедитесь, что они полностью загружены до моего маршрутизатора instantated

App.StaticCollections.contactTypes.fetch({}), 
App.StaticCollections.documentTemplates.fetch({}), 
App.StaticCollections.invoiceStatuses.fetch({}), 
App.StaticCollections.estimateStatuses.fetch({}), 
App.StaticCollections.currencies.fetch({}) 

App.Router = new MainRouter(); 
Backbone.history.start({ 
    pushState: false, 
    root: App.Root 
}); 
+2

Это всегда лучшая идея для того, чтобы статические данные всегда присутствовали, когда страница изначально загружалась ... Загрузите эти данные на свою страницу. Не извлекайте их на загрузку страницы. –

ответ

0

http://api.jquery.com/jQuery.when/

$.when(
    App.StaticCollections.contactTypes.fetch({}), 
    App.StaticCollections.documentTemplates.fetch({}), 
    App.StaticCollections.invoiceStatuses.fetch({}), 
    App.StaticCollections.estimateStatuses.fetch({}), 
    App.StaticCollections.currencies.fetch({}) 
).then(function() { 
    App.Router = new MainRouter(); 
    Backbone.history.start({ 
    pushState: false, 
    root: App.Root 
    }); 
}); 
0

контрейлерных от комментария Сашант ... в общем, вы не хотите, чтобы сделать несколько запросов только для того, чтобы вашу страницу, чтобы сделать. Если есть сетевая задержка, это может очень расстраивать для пользователя.

Bootstrap данных на странице, используя Collection.reset:

App.StaticCollections.contactTypes.reset([ 
    { attr1: "val1", ... } 
]); 

При необходимости, вставлять значения динамически, используя свой серверный язык.

+0

Когда вы говорите, вставляйте значения динамически , вы имеете в виду включать файлы JSON в качестве статического файла веб-сайта или просто включать данные внутри тега скрипта? – Michael

+0

@Michael Я думаю, что лучше включить его в тег скрипта ... – McGarnagle

Смежные вопросы