簡體   English   中英

如何在 2 Screen 之間傳遞數據而不在 React Native 中使用導航

[英]How to pass data between 2 Screen and not use navigation in react native

我有 2 個屏幕,我想在不使用導航的情況下將數據從第一個屏幕傳遞到第二個屏幕,因為使用導航時需要轉到下一個屏幕,我只希望當我從第一個屏幕單擊一個按鈕時,數據將是轉移到第二個屏幕。 同樣的問題,當按下后退按鈕返回第一個屏幕時,是否可以將數據從第二個屏幕傳輸到第一個屏幕,我使用導航中的默認后退按鈕,所以不知道如何調用該后退按鈕的 onPress()。


    export default function FirstScreen({ navigation }) {
    return (
        <View>
            <TouchableOpacity onPress={() => {/* pass data (for example text) to SecondScreen 
        and don't need to switch to the SecondScreen */}}>
                <View>
                    <Icon name="close"></Icon>
                </View>
            </TouchableOpacity>
            <TouchableOpacity onPress={() => { navigation.navigate('secondscreen') }}>
            </TouchableOpacity>
            <Text>{/* display the data sent from the SecondScreen */}</Text>
        </View>
    );}

第二屏

export default function SecondScreen({ navigation }) {
/* pass data to FirstScreen when click to back button in header navigation*/
return (
    <View>
        <Text>{/* display the data sent from the FirstScreen */}</Text>
    </View>
);}

我已經嘗試搜索但仍然找不到針對此問題的具體解決方案。 希望大家幫幫忙

有幾個選項,您可以使用“useState()”並通過 props 傳遞狀態和 setState,和/或用它創建回調函數。

除非這是你唯一會使用這種狀態的地方,否則在這種情況下使用全局應用程序狀態聽起來會更好,它將為當前會話臨時存儲狀態。 同時,該狀態可以從您的整個應用程序中讀取和訪問。

我相信 Redux 是目前在應用程序中處理全局狀態的最流行的方式,你應該谷歌一下並做一些研究。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM