2012-12-10 50 views
1

我有一些問題與餘燼transitionTo,我不能讓它通過參數傳遞到上下文中的狀態。嘗試使用TransitionTo與上下文

test: Ember.Route.transitionTo('step', {step:1}), 

但是,這不會將上下文中的步驟值傳遞給路由。如果我有一個狀態「最終」,並使用

test: Ember.Route.transitionTo('final'), 

進入路線最終,因爲顯然沒有上下文在http://jsfiddle.net/reubenposthuma/6p6XJ/167/

回答

2

我認爲你正在尋找的可能是什麼router.send()方法,該方法接受第二個參數作爲上下文。

所以如果你有這個在你的路由器

test: Ember.Route.transitionTo('final') 

定義,那麼你應該能夠調用

App.router.send('test', {step:1}) 
無論你想在代碼

。然後{step:1}將作爲上下文傳遞給路由。

2

當使用Ember.Route.transitionTo('state')通過

工作演示,你要定義一個處理程序,它調用router.transitionTo('state',context),在運行時檢索上下文。

所以test: Ember.Route.transitionTo('step', {step:1})是無效的,但背景中的動作助手,例如{{action test controller.content}}

看到http://jsfiddle.net/Sly7/6p6XJ/168/

希望這有助於

+0

哦,這有趣的是,它不這樣工作。在控制檯中,我可以運行'App.get('router').transportTo('step',{step:2})'並切換到正確的狀態。由於App尚未定義,因此在設置(在jsfiddle演示中進行測試)時無法使用。我正在按照你的建議設置它!謝謝! –