前提
ReactNativeを使ってスマホアプリを作っています。
新たな画面が読み込まれた時に一度だけ関数を実行させて値を取得したいです。
取得した値はとあるボタン押下時に使用します。
実現したいこと
・画面読み込み時に一度だけ関数を実行して値を取得したい
・取得した値はとあるボタン押下時に使用する
発生している問題・エラーメッセージ
画面が読み込まれるとすごい勢いで関数が何度も呼ばれる、無限ループに陥る。
該当のソースコード
javascript
1const ChargeHow = (props: ChargeHowType) => { 2 3 const dispatch = useAppDispatch(); 4 const { 5 setModalChooseTime, 6 ・・・・ 7 routeName, 8 } = props; 9 10 // これが何度も実行されてしまう 11 const fetchResponce = () => { 12 dispatch( 13 createResponce({ 14 ・・・・・ 15 ), 16 }), 17 ).then( 18 response => { 19 return response; 20 }, 21 ); 22 }; 23 24 const resultRes = fetchResponce();
試したこと
useEffectを使うことで一度だけ実行することができたものの、useEffectのブロック内でしか取得した値が使用できないため意味がなかった。
補足情報(FW/ツールのバージョンなど)
react": "17.0.2
"react-native": "0.68.1",

回答1件
あなたの回答
tips
プレビュー