當使用 flatlist 將資料從一個螢屏路由到另一個螢屏時,我可以使用route.param. 但是我可以將資料從螢屏一發送到螢屏二到螢屏二到螢屏三嗎?
我應該使用什么方法?
uj5u.com熱心網友回復:
你應該檢查導航:
onPress={() => {
navigation.navigate('MyScreen', {
myData: data,
});
}}
不要忘記const MyCurrentScreen = ({navigation}) => {
然后在您導航的“我的螢屏”中,您將可以訪問
const MyScreen = ({route}) => {
const data = route.params.myData;
uj5u.com熱心網友回復:
這取決于螢屏導航的流程。就像如果您像這樣從第一個螢屏->第二個螢屏->第三個螢屏傳遞資料,那么您可以在導航引數上傳遞資料。
但是如果您從第二個螢屏以外的另一個螢屏導航到第三個螢屏,它會給您引數錯誤,以便您可以使用 React-redux。
在您的螢屏檔案上匯入 useNavigation。我更喜歡這個來匯入
import {useNavigation} from '@react-navigation/native;
就在像這樣回傳使用之前。
const navigation = useNavigation();
從第一個螢屏 onPress 按鈕使用這個只是你的螢屏名稱和這個名稱資料作為你的資料
onPress ={()=> {
navigation.navigate('secondScreen',{
myData:paramsData})}};
在第二個螢屏上得到你的價值,并為第三個螢屏做同樣的事情。只需在第二個螢屏的導航引數中傳遞“資料”。
const secondScreen =({props}) => {
let data = props.route?.params?.myData
}
uj5u.com熱心網友回復:
更好的方法是使用 redux 或背景關系掛鉤
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/515694.html
上一篇:反應原生將字串轉換為陣列資料
下一篇:使用本機反應將資料存盤到資料庫中
