2016-11-27 1 views
0

У меня есть небольшой вопрос относительно областей и обещаний. Я объявил 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; 
    }); 

Затем в контроллер доступа индивидуальные свойства соответственно

 Смежные вопросы

  • Нет связанных вопросов^_^