[英]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.