2016-11-27 8 views
0

私はスコープと約束に関して小さな質問があります。 私はpromise呼び出しの外でwiz_idsを宣言しました。約束が解決されたら、再度アクセスしたいと思います。 私はbind()を使用しようとしましたが、運がありません。角度のUI-Routerで約束が解決されたときのスコープへのアクセス

これは私の状態です:

state: 'wizard', 
config: { 

    url: '/wizard', 
    templateUrl: 'app/partners/wizard/wizard.html', 
    controller: 'WizardController', 
    controllerAs: 'vm', 
    redirectTo: 'wizard.step1', 
    resolve: { 
     /* @ngInject */ 
     promiseData: ['$window', '$location', 'WizardDataService', function ($window, $location, WizardDataService) { 
       var wiz_ids = { 
        'wiz_install_id': $location.search().install_id, 
        'wiz_instance_id': $location.search().instance_id 
       }; 

       return WizardDataService.getWizardData(wiz_ids) 
        .then(function (response) { 
         // How do I access wiz_ids from here? // 
         return response.data; 
        }); 
      }] 
    }, 
} 
+0

あなたは 'wizard.step1'状態の設定を表示することができますか? – MiTa

答えて

2

あなたはthen()の内側に、より複雑なオブジェクトを返すことができます。以下のような

何か:

return WizardDataService.getWizardData(wiz_ids) 
    .then(function(response) { 

    var data = { 
     wiz_ids: wiz_ids, 
     wiz_data: response.data 
    } 

    return data; 
    }); 

はその後、コントローラへのアクセスに個々のプロパティは、それに応じて

関連する問題