[Chodzi o nowym 1.0.0-pre.4 + router.]Ember Router: model asynchroniczny (obietnice?)
chcę wrócić z model
sposobu wykonania Ember trasa jest zapis, który wymaga asynchronicznych wywołań zwrotnych do ładowanie, na przykład, ponieważ wymaga załadowania wielu (zagnieżdżonych) modeli. Jaki jest najlepszy sposób na zrobienie tego?
Oto przykładowy kod z hipotetycznej aplikacji bloga, który ilustruje problem:
App.Router.map ->
@resource 'filteredArticles', path: '/:filter'
App.FilteredArticlesRoute = Ember.Route.extend
model: (params) ->
blog = App.Blog.find(1) # get the user's Blog singleton
property = switch params.filter
when 'published' then 'publishedArticles'
when 'draft' then 'drafts'
when 'all' then 'articles'
# Return the list of articles from the `blog` record.
# But `blog` hasn't necessarily finished loading :(
blog.get(property)
O ile wiem, czy po prostu wrócić 'blog.get (właściwość)' go zwróci kolejną obietnicę, która zostanie sprowadzona asynchronicznie. –
Chciałbym, żeby tak było, ale po prostu zwraca pustą tablicę, która nigdy się nie aktualizuje - nawet po ponownym uruchomieniu 'App.Blog.find (1) .get ('articles')' daje niepustą tablicę. –
To wydaje mi się bardziej podobne do kwestii Githuba :) –