3
Rails 5バックエンドで認証を行うIonic 2アプリケーションがあります。ユーザーがログに記録されると、彼の情報はローカルストレージに保存されます。 だから、ユーザーがアプリを開いて、既にログインしている場合は、ログインページをスキップする必要があります。私は私のapp.component
ローカルストレージ上のユーザーに関する情報があるかどうかに応じて私のルートページを設定しようとしていますが、storage.get
メソッドは非同期であるように見えますので、常にチェックしています。偽です。Ionic 2 auth - ローカルストレージにユーザーがいる場合はログインページをスキップします
どのように私はそれを修正することができますアイデア?この場合
@Component({
templateUrl: 'app.html'
})
export class MyApp {
@ViewChild(Nav) navCtrl: Nav;
public rootPage; // Just declare the property, don't set a value here
constructor(...) {
this.platform.ready().then(() => {
Splashscreen.hide();
// Get the status from the storage
this.storage.get('login:status').then(loggedIn => {
this.rootPage = loggedIn ? HomePage : LoginPage;
});
});
}
}
ユーザーがすでにログインしている場合、ルート・ページがホームページになり、それはだ場合:あなたはこのようにストレージから値を取得した後、ルート・ページを設定することができ
ええ、私の問題は、サービスで関数を取得することでした...だから、その関数を購読してコードを実行する必要がありました。しかし、私は本当に感謝しています、あなたは多くを助けました! =) –
ユーザーがログインしたときにイベントを作成することもできます。また、app.componentで、そのログインイベントが公開されているかどうかを確認することもできます。 – Yasir
@RonanLopesを助けてくれてうれしいです:) getを同じapp.componentあなたに全体的なアイデアを与えることはできますが、これは間違いなくサービスに含める必要があります – sebaferreras