2015-08-21 57 views
1

setupController,我有:爲什麼我無法從setupController中定義的屬性訪問meta?

controller.set('products', 
    this.store.query('product', { 
    filter: { 'user-id': model.id }, 
    page: { number: (params.page ? params.page : 1) } 
    }) 
); 

將返回:

{ 
    "meta":{ 
     "page":{ 
      "number":1, 
      "size":10, 
      "total":17, 
      "prev":null, 
      "next":2, 
      "first":1, 
      "last":17 
     } 
    }, 
    "data":[{..}, {..}] 
} 

在模板中,爲什麼{{log products.meta}}回報undefined

我在model hookmeta中做同樣的查詢實際返回有效數據。 setupController有什麼特別的嗎?

回答

4

您在代碼中所做的操作是將控制器products屬性設置爲從this.store.query返回的Promise。你會希望讓這一承諾的決心,你設置的屬性之前控制器上:

this.store.query('product', { 
 
    filter: { 'user-id': model.id }, 
 
    page: { number: (params.page ? params.page : 1) } 
 
}).then(products => { 
 
    controller.set('products', products); 
 
});

,將確保你實際上分配給products屬性是解決車型,不是承諾。

相關問題