여기 내 일반적인 문제가 있습니다. 값을 얻기 위해 아약스 호출을해야하는 팩토리가 있습니다. 이 팩토리를 주입하고 싶지만 아약스 호출이 해결 된 후에 만 주입됩니다. 즉, 이미 값이 있어야합니다. 이것이 가능한가? 좀 더 나은 옵션을 제공 할 수 있도록 상황을 알려 드리겠습니다.약속에 대한 각도 해결 의존성
저는 UserFactory가 있습니다.
var app = angular.module('app',[]);
app.factory('UserFactory',[
function(){
//ajax call to get the user object
//dont allow injection until user has arrived
}
]);
var home = angular.module('home',[]);
home.controller('UserInfoController',[
'UserFactory',//I don't want this resolved until the ajax call has completed
function(User){
//bind user data to the view
}
]);
이것이 가능합니까? 아니면 내가 잘못 생각할 것인가? 약속이 매번 사용되지 않아도 사용자의 정보에 액세스 할 수 있기를 바랍니다.
난 당신이 약속을 사용하는 방법에 대한 우려 이유를 모르겠어요. 어쨌든 사용자가 있는지 확인하는 것은 어떨까요? 그렇지 않다면 공장 약속을 사용하여 설정하십시오. – Scott