你需要使用ALBUMID PARAM在路線的deserialize()
方法返回一個上下文對象。該上下文將被傳遞到您的路線connectOutlets()
。在connectOutlets()
內,您可以將上下文傳遞給控制器和/或視圖。
在下面的示例中,將創建一個AlbumController,其中的content
屬性設置爲傳遞到connectOutlets()
的上下文。一個AlbumView也將被創建,它將有權訪問控制器的content
:
Ember.Route.extend({
route: "/:albumid",
serialize: function(router, context){
return {albumid: context.get('albumid')};
},
deserialize: function(router, params){
// return a context object that will be passed into connectOutlets()
return App.store.find(App.Album, params.albumid);
},
connectOutlets: function(router, context) {
// context comes from deserialize(), and will be passed in as the
// content property for AlbumController
router.get('albumsController').connectOutlet('album', context);
}
})
這已過時。 '反序列化'不再存在。 – vanthome