[英]Passing data from controller to route in Ember
我試圖弄清楚從控制器接收到的數據如何在Ember.js中的不同路由中使用。
我有一個像這樣的控制器,它正在進行Ajax調用,並在調用成功時調用successCallback
函數:
App.LoginController = Ember.ArrayController.extend({
...
function successCallback(json){
var userData = json;
self.transitionToRoute('dashboard');
}
...
});
我試圖在LoginController中檢索此userData
並在儀表板視圖中使用它。
App.DashboardRoute = Ember.Route.extend({
model: function(){
return this.controllerFor('login').get('userData');
}
});
我試過安慰this.controllerFor('login').get('userData');
但沒有任何回報。 但是在過渡到LoginController之前對數據進行整理顯示,數據確實已分配給變量userData
。
任何幫助將是巨大的!
var userData = json;
將userData
聲明為局部變量,一旦離開該方法,它將失去作用域。 您需要在控制器上具有userData
屬性,然后使用
this.set('userData', value);
然后,該值將保留並在儀表板路線中可用。
在這里查看工作示例
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.