2016-06-17 97 views
-1
this.store.findRecord('book',params.id).then(function(tag){ 
      tag.get('relatedBook').then(function(related){ 
       var items = related.get('related'); //items = '1,2,3' 
       return related.store.query('book', {filter:{id: items} }); 
      }); 
     }), 

控制檯還是回到本地主機:8000 /書籍過濾器[ID] = 1,2,3,目前仍處於JSON API的數據,但是當我打電話{{模型}}在模板中,它什麼都不返回?燼JS無法途徑獲取數據到模板

這裏有什麼問題?

回答

-1

您缺少兩個返回語句。您的模型應該是這樣的:

model() { 
    return this.store.findRecord('book',params.id).then(function(tag){ 
     return tag.get('relatedBook').then(function(related){ 
      var items = related.get('related'); //items = '1,2,3' 
      return related.store.query('book', {filter:{id: items} }); 
     }); 
    }), 
} 

模型鉤希望你返回一個承諾,然後當你chaining promises這樣,你必須回到他們每個人的結果,所以你的模型掛鉤的最終結果將是您上次從鏈中返回的承諾的結果。

+0

很酷。其實我用RSVP.hash()做這個,所以我忘了返回tag.get('relatedBook')。非常感謝你 – Nam