簡體   English   中英

將數據從控制器傳遞到Ember中的路由

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM