React WebappをReact Nativeバージョンに転送中です。componentWillReceiveProps in ReactネイティブとReactJS
リアクションネイティブでは、これはログインページにあります。私は反応ナビゲーションを使用しています。
componentWillReceiveProps(nextProps) {
const { requestStatus, currentUser } = nextProps
const getUserInProgress = get(requestStatus, GET_MY_DETAILS, true)
if (!getUserInProgress) {
if (currentUser) {
currentUser.verified_mobile ? this.props.navigation.navigate('Dashboard') : this.props.navigation.navigate('VerifyMobile')
} else if (!currentUser) {
console.log('not logged in')
}
}
}
したがってログインページでは、ユーザーの詳細を取得し、モバイルが確認されているかどうかを確認し、そうでない場合はモバイルページを確認します。
モバイルページの確認では、呼び出しが行われると、ログインページのこのコンポーネントのWillReceivePropsは、現在アクティブなページではないにもかかわらず実行されます。
私はReactJSで同じロジック/コードを持っており、まったく違った動作をします。
これはReact Nativeでは通常のことですか?
編集:
私の問題点を明確にしてください。
私がログインページにいないとき、私はモバイルページを確認しています。そのページが履歴にあるにもかかわらず、コンポーネントWillReceivePropsはまだ実行されています。これは、私がreactjsアプリを作ったときには起こりませんでした。これは反応するネイティブアプリでのみ起こっている。だから私はこれは正常な動作のページのヒストリスタックでは、そのコンポーネントを実行するのだろうかと思っていますwillReceiveProps?
あなたはどのような動作を経験していますか、正確にはどのようなエラーが発生しているかを詳しく教えてください。 –
はい、スタックにまだありますので、まだ存在します。それは表示されていません。 – WilomGfx