Ionic3 离子3存储问题在浏览器中不工作

Ionic3 离子3存储问题在浏览器中不工作,ionic3,ionic-storage,Ionic3,Ionic Storage,好的,我要把头发撕下来(剩下的部分)。每当我在清除所有Cookie/存储项目后从头启动应用程序时,我都会检查某些项目……从而查看该用户是否登录应用程序 让他们通过firebase登录(成功)后,它会返回到应用程序,然后我们在其中设置UID并获取API调用的google令牌。所有值都已确认并正在成功检索 我们通过存储服务提供商进行设置。一旦这些设置完成,我们就尝试从API调用一些东西,这需要google令牌。当我们试图从存储中检索时,它不在那里。但是,如果我只是在调试/应用程序选项卡中刷新浏览器(

好的,我要把头发撕下来(剩下的部分)。每当我在清除所有Cookie/存储项目后从头启动应用程序时,我都会检查某些项目……从而查看该用户是否登录应用程序

让他们通过firebase登录(成功)后,它会返回到应用程序,然后我们在其中设置UID并获取API调用的google令牌。所有值都已确认并正在成功检索

我们通过存储服务提供商进行设置。一旦这些设置完成,我们就尝试从API调用一些东西,这需要google令牌。当我们试图从存储中检索时,它不在那里。但是,如果我只是在调试/应用程序选项卡中刷新浏览器(而不是清除cookies/etc),那么神奇的是localdb值就在那里,现在一切都正常了

以下是存储提供程序:

@Injectable()
export class StorageProvider {
constructor(public http: HttpClient, public storage: Storage) {
console.log('Hello StorageProvider Provider');
}
public set(settingName,value):Promise<any>{

return this.storage.ready().then(() => {
  this.storage.set(`setting:${ settingName }`,value).then(() => {
    Promise.resolve(true);
  })
  .catch(err => {
    Promise.reject(err);
  })
})
.catch(err => {
  console.log("ERROR Storage Not Ready: " + err);

})
} public async get(settingName){
return this.storage.ready().then(() => { 
  this.storage.get(`setting:${ settingName }`).then((res) => {
      Promise.resolve(res);
  })
  .catch(err => {
    Promise.reject(err);
  })
})
.catch( err => {
  console.log("Storage Get Error");
  return Promise.reject(err);
}
);
}
尝试:

而不是如何在异步方法中使用wait


同样值得一读的是:

你能在利用wait的地方分享整个方法吗?我会尝试一下,然后再给你回复。这似乎有效:wait This.storage.get('Token')。然后((results)=>{This.Token=results;})
await this.storage.get('Token').then((results) => {
  this.token = results;
})

if(this.token == null)
{
  return Promise.reject("No Token Set");
}
this.token = await this.storage.get(‘Token’);