Closed guvenakcoban closed 6 years ago
AsyncStorage kullanırken bir async method kullanıyor olmalısınız. getToken şöyle olmalı:
class UserInfo {
async getToken() { // async tanımlı dikkat
const token = await AsyncStorage.getItem('user_token');
return token;
}
}
Çağırdığınız yerde de promise döndürdüğü için bu şekilde kullanmalısınız
UserInfo.getToken().then(res => {
var token = res;
// işlemler
})
Not: AsyncStorage asenkron olduğu için promise kullanmak zorundasınız
Tokena .then dışından erişim sağlamam mümkün değil mi? Servera sorgu yaparken token kullanacağım. Helper class yaratmak kullanmak istiyorum. Örneğin:
async getUserId() {
const token = await AsyncStorage.getItem('user_token');
const data = Api.get('server?token=' + token);
return data;
}
.then() kullanmadan mümkün değil sanırım?
Sonuçta asenkron bir işlem yapıyorsunuz. Token'ı alırsınız zaten o şekilde ama siz sunucudan veriyi döndürmek istiyorsunuz herhalde. Yine de o şekilde olmalı.
Merhabalar,
Bir helper class'ı oluşturup oradan loginde tanımladığım user_token değerini çekmek istiyorum fakat promise döndürmenin dışına çıkamadım. Aşağıda denediğim yöntemlerden birisini inceleyince daha iyi anlayacaksınız. Bunu nasıl yapabilirim? (Async-await ile de işe yaramadı)
//Helper.js
//Component.js
const token = UserInfo.getToken();