2016-10-16 1 views
1

내부 콘솔 로그 출력이 외부 콘솔 로그와 다른 이유는 무엇입니까?
인데 반해 둘은 ​​동일해야합니다.
내가 찾고있는 것은 firebase 저장소에 저장된 파일에 대한 URL을 얻는 것입니다.angularjs firebase storage getDownloadURL은 정의되지 않은 상태로 반환하지만 존재합니다.

 var url = spaceRef.getDownloadURL() 
      .then(function(url){ 
       //$scope.avatar = url; 
       console.log("inside:", url); 
       return url; 
       //console.log(url); 
      }) 
      .catch(function(error) { 
       $scope.errMsg = true; 
       $scope.errorMessage = error.message; 
      }); 
     console.log("outside:", url); 

답변

0

then
자바 스크립트에서 약속에 관한 함수이다. getDownloadURL()이 평가 된 후에 만 ​​url 변수로 출력이 설정됩니다. 그래서 내부의 약속이 평가 후에 만 ​​내용과 외부로 기록 된 하나를 인쇄합니다 하나 정의되지 않았거나 null 또는 빈 ... 그것은 .. 차이 asynchronous..So

Promis,의 then()

관련 문제