メインタブナビゲータを持つアプリケーションを作成しようとしていますが、ログインしていない場合は、ログイン画面(しかし、私はまだログインをスキップするオプションを取得したい)。反応ナビゲーションでアプリケーションを開くときにユーザーがログインしていない場合はログイン画面を表示
また、初めてユーザーがアプリを開くと、私はアプリを説明するオンボーディング/ウェルカム画面を表示したいと思います。
今の私はredux-persist
と永続化していますので、アプリを開いたとき(つまり、バックグラウンドで開いていなくても)、ログインしていなければLogin
の画面が表示されますMain
画面ユーザーがすでにログインしている場合。
私は、スタックのナビゲーターは画面WelcomeScreen
、LoginScreen
とMain
を有するように、スタックナビゲータでネストされて私の主なタブナビゲータを持っている必要があることを理解しています。
しかし、初めてアプリを開いたときにユーザーがログインしているのを確認してからLogin
画面にリダイレクトするにはどうすればよいですか?私はhttps://github.com/react-community/react-navigation/blob/master/examples/ReduxExample/src/reducers/index.jsを見てきましたが、それはfirstAction
、tempNavState
、およびsecondAction
が意味するものはあまり直感的ではありません。
ユーザーがログインしているかどうかを確認するミドルウェアを作成する必要がありますか?
私はナビゲーションレデューサーにログインを追加するのではなく、ルートコンテナ内のすべてを行うだけですか? – Jamgreen
レデューサーを使用していて、それに精通していれば、ルート・レデューサーでログイン・アクションを送信するだけでなく、ユーザーが認証されたと見なされ、ナビゲーション・アクションがトリガーされてユーザーをメイン画面にナビゲートします。 –
私はこれをどうやって行うのか本当に分かりません。私のルートコンポーネントの 'componentDidMount()'で呼び出される 'checkIfUserIsLoggedIn'アクションを作成する必要がありますか? 'checkIfUserIsLoggedIn'アクションにはディスパッチ' {type: 'NOT_LOGGED_IN'} 'が含まれていますので、私の' navReducer'で私はナビゲーションをリセットし、ユーザーをログイン画面にナビゲートできますか? – Jamgreen