2014-09-21 3 views
1

로그인 한 사용자의 user.uid에 액세스해야 Firebase 참조로 전달할 수 있습니다. 의견에 따라angularfire의 다른 함수에서 .then() 함수의 결과를 어떻게 사용할 수 있습니까?

업데이트 코드 :

var populateTasks = function(date){ 
    var promise = getKey(); 
    promise.then(function(user){ 
    $scope.ref = new Firebase("https://myfirebase.firebaseio.com/users/"+user.uid+"/tasks/" + getWeekStart(date)); 
    var sync = $firebase($scope.ref); 
    var week = sync.$asArray(); 
    $scope.week = week; 
    }); 
}; 

function getKey(){ 
    return simpleLogin.getUser(); 
} 

감사합니다.

+0

안녕하세요 @EmptyPockets! 나는 당신이 이것을 해결했다는 것을 알고 있습니다. 그러나 미래의 게시물을 위해서, devs가 당신과 함께이 일을하기에 충분한 컨텍스트가 없다는 것을 지적하고 싶습니다. 예를 들어, simpleLogin.getUser()는 어디에서 왔습니까? (아마도 여기에 언급되지 않은 angularFire- 씨앗으로부터). 또한 이보다 나은 접근 방법은 [경로에서 해결] (https://www.firebase.com/docs/web/libraries/angular/guide.html#section-routes)을 사용하는 것입니다. 사용자가로드되었는지 여부에 대해 걱정할 필요가 없습니다. – Kato

+0

@Kato 감사합니다. 다음 번에 할 것입니다. 최근의 질문에 대해서는 관련 정보가 모두 포함 된 Plunkr을 게시했습니다. 나는 나의 미래 지위를 위해 그것을 할 것이다라고 생각한다. stackoverflow에서 제공 한 모든 도움에 감사드립니다. 당신은 블로그가 없거나 아무것도하지 못합니까? – EmptyPockets

답변

0

약속을 반송하려면 getKey()으로 전화 한 다음 에 반환 된 약속에 대해 then()으로 전화하여 결과에 액세스하십시오.

+0

빠른 응답을 보내 주셔서 감사합니다. 열쇠를 얻을 때 약속을 어떻게 되 찾을 수 있습니까? $ 약속을 돌려 주시겠습니까? – EmptyPockets

+0

@EmptyPockets :'then()'은 약속을 되 돌리므로 반환 할 필요가 있습니다 :'return .... then (...); ' – SLaks

+0

죄송합니다. 좀 더 설명해 주시겠습니까? simpleLogin.getUser()를 돌려 준다. 그러면 (function (user) {}); – EmptyPockets

관련 문제