Если вы используете обещания в методе и хотите вернуть результат обещания, вам следует также обещать свой метод. Вы можете добиться этого двумя способами:
- Вернуть обещание
- Или использовать asyn c -await
Подход 1:
return new Promise( resolve => {
this.storage.get('user_info').then((data) => {
let user_info = JSON.parse(data);
if(user_info == null)
{
this._userIsLoggedIn = false;
} else {
this._userIsLoggedIn = user_info.isLogin;
}
return resolve(this._userIsLoggedIn);
});
});
Подход 2 (который чище):
const data = await this.storage.get('user_info');
let user_info = JSON.parse(data);
if(user_info == null)
{
this._userIsLoggedIn = false;
} else {
this._userIsLoggedIn = user_info.isLogin;
}
return this._userIsLoggedIn;
Также обратите внимание, что вы должны изменить свою функцию с помощью ключевого слова async
по порядку использовать await
.