2016-05-31 16 views
0

React Native의 AsyncStorage를 사용하여 새 http 요청에 사용할 필요가있을 때 반환되는 인증 토큰을 저장하고 있습니다. 내가 성공적으로 그것을 저장할 수있는 콘솔 로그, 나는 값을 반환하는 데 문제가 있습니다.React Native의 AsyncStorage에서 토큰을 반환 할 수 없습니다.

var x= LocalDb.getAcessToken(); 
console.log(x); 

그러나 다른 방법으로 다른 창에서 전화하고 싶습니다. getAcessToken는()가

exports.storeToken=function(token){ 
    AsyncStorage.setItem('access_token', token); 
    } 

^^^^이 기능이 성공적으로 내가 할 수있는 토큰

exports.getAccessToken=function(){ 
    AsyncStorage.getItem('access_token') 
    .then((value) => { 
     if(value) { 
     console.log(value); 
    **//I want to return the value here, to use in another function** 
     } 
    }) 
    .done(); 
} 

저장에 CONSOLE.LOG 때 다른 한편으로

LocalDb.getAccessToken(); 

은 작동 반환 값을 사용할 때 값을 반환하지 않습니다. 약속의 가치를 어떻게 되돌릴 수 있습니까?

답변

0

promise 문의 getAccessToken 함수를 반환해야합니다. 나는 또한이 값으로 약속을 되 돌린다.

exports.getAccessToken=function(){ 
return AsyncStorage.getItem('access_token') 
.then((value) => { 
    if(value) { 
     console.log(value); 
     return value; 
    } 
    }) 
} 
+0

또한'.done()'호출을 호출 할 필요가 없다고 생각합니다. –