gpt4 book ai didi

javascript - 将数据从 Controller 传递到 Ember 中的路由

转载 作者:行者123 更新时间:2023-12-02 16:41:59 25 4
gpt4 key购买 nike

我正在尝试弄清楚如何在 Ember.js 中的不同路由中使用从 Controller 接收的数据。

我有一个像这样的 Controller ,它正在进行 Ajax 调用,并在成功后调用 successCallback 函数:

App.LoginController = Ember.ArrayController.extend({
...
function successCallback(json){
var userData = json;
self.transitionToRoute('dashboard');
}
...
});

我正在尝试在 LoginController 中检索此 userData 并在仪表板 View 中使用它。

App.DashboardRoute = Ember.Route.extend({
model: function(){
return this.controllerFor('login').get('userData');
}
});

我尝试安慰 this.controllerFor('login').get('userData'); 的结果,但没有任何返回。但在 LoginController 中转换之前对数据进行控制台显示,数据确实已分配给变量 userData

任何帮助都会很棒!

最佳答案

var userData = json;

userData声明为局部变量,一旦离开该方法,该变量就会失去作用域。您需要在 Controller 上有一个 userData 属性,然后使用

设置它

this.set('userData', value);

然后,该值将持续存在并在仪表板路径中可用。

查看工作示例 here

关于javascript - 将数据从 Controller 传递到 Ember 中的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27415099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com