欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

React Navigation 路由傳參的操作代碼

 更新時(shí)間:2023年08月29日 10:15:08   作者:林中白虎  
這篇文章主要介紹了React Navigation 路由傳參,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

頁(yè)面之間傳遞參數(shù)

實(shí)現(xiàn)頁(yè)面之間傳遞參數(shù)很簡(jiǎn)單,跟普通的 React 項(xiàng)目一樣,具體實(shí)例入戲:

// 傳入?yún)?shù)
export default function Home(props: { navigation: any }) {
  return (
    <View>
      <Text>Home</Text>
      <Button
        title="切換到詳情頁(yè)"
        onPress={() =>
          props.navigation.navigate("Detail Page", {
            itemId: 86,
            otherParam: "這是傳遞過來的參數(shù)",
          })
        }
      />
    </View>
  );
}
// 獲取參數(shù)
export default function ReviewDetails(props: {
  navigation: any;
  route: { params: { itemId: number; otherParam: string } };
}) {
  return (
    <View>
      <Text>詳情頁(yè)</Text>
      <Text>itemId: {props.route.params.itemId}</Text>
      <Text>otherParam: {props.route.params.otherParam}</Text>
      <Button
        title="切換到詳情頁(yè)"
        onPress={() => props.navigation.push("Detail Page")}
      />
      <Button
        title="返回上一頁(yè)"
        onPress={() => props.navigation.goBack()}
      ></Button>
      <Button
        title="清除所有堆棧信息返回首頁(yè)"
        onPress={() => props.navigation.popToTop()}
      ></Button>
    </View>
  );
}

通過上述的例子可以看出我們實(shí)現(xiàn)參數(shù)的傳遞與獲取只需要兩部:

  • 通過將參數(shù)放入對(duì)象中作為函數(shù)的第二個(gè)參數(shù)來將參數(shù)傳遞給路由 navigation.navigate('RouteName', { 參數(shù) })
  • 讀取屏幕組件中的參數(shù): route.params

傳遞初始參數(shù)

您可以將一些初始參數(shù)傳遞給屏幕,如果您在導(dǎo)航到此屏幕時(shí)未指定任何參數(shù),則將使用初始參數(shù)。它們也與您傳遞的任何參數(shù)淺層合并。初始化參數(shù)可以在 Stack.Screen 組件中使用 initialParams 屬性來實(shí)現(xiàn)。具體實(shí)例如下:

<Stack.Screen
  name="Detail Page"
  component={ReviewDetails}
  initialParams={{ itemId: 42 }}
/>

參數(shù)傳遞給上一級(jí)路由

參數(shù)不僅對(duì)于將一些數(shù)據(jù)傳遞到新屏幕有用,而且對(duì)于將數(shù)據(jù)傳遞到前一個(gè)屏幕也很有用。具體實(shí)例如下:

// 首頁(yè)(接收創(chuàng)建文章頁(yè)面回傳回來的數(shù)據(jù))
export default function Home(props: { navigation: any; route: any }) {
  React.useEffect(() => {
    if (props.route.params?.post) {
      console.log(props.route.params?.post);
    }
  }, [props.route.params?.post]);
  return (
    <View>
      <Text>Home</Text>
      <Text style={{ margin: 10 }}>
        添加文章頁(yè)面?zhèn)骰氐膮?shù): {props.route.params?.post}
      </Text>
      <Button
        title="切換到詳情頁(yè)"
        onPress={() =>
          props.navigation.navigate("Detail Page", {
            itemId: 86,
            otherParam: "這是傳遞過來的參數(shù)",
          })
        }
      />
      <Button
        title="添加文章"
        onPress={() => props.navigation.navigate("CreateArticle")}
      ></Button>
    </View>
  );
}
// 創(chuàng)建文章
export default function CreateArticle(props: { navigation: any; route: any }) {
  const [postText, setPostText] = React.useState("");
  return (
    <View>
      <TextInput
        multiline
        placeholder="What's on your mind?"
        style={{ height: 200, padding: 10, backgroundColor: "white" }}
        value={postText}
        onChangeText={setPostText}
      />
      <Button
        title="完成"
        onPress={() => {
          props.navigation.navigate({
            name: "Home Page",
            params: { post: postText },
            merge: true,
          });
        }}
      />
    </View>
  );
}

通過上述的例子我們可以看到要把參數(shù)傳遞給上一級(jí)路由的方法跟我們普通傳遞參數(shù)的方法是一樣的。

到此這篇關(guān)于React Navigation 路由傳參的文章就介紹到這了,更多相關(guān)React 路由傳參內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • react實(shí)現(xiàn)列表滾動(dòng)組件功能

    react實(shí)現(xiàn)列表滾動(dòng)組件功能

    在開發(fā)項(xiàng)目的時(shí)候,從服務(wù)端獲取到數(shù)據(jù)列表后,展示給用戶看,需要實(shí)現(xiàn)數(shù)據(jù)自動(dòng)滾動(dòng)效果,怎么實(shí)現(xiàn)呢,下面小編給大家分享react實(shí)現(xiàn)列表滾動(dòng)組件功能實(shí)現(xiàn)代碼,感興趣的朋友一起看看吧
    2023-09-09
  • 解決React初始化加載組件會(huì)渲染兩次的問題

    解決React初始化加載組件會(huì)渲染兩次的問題

    這篇文章主要介紹了解決React初始化加載組件會(huì)渲染兩次的問題,文中有出現(xiàn)這種現(xiàn)象的原因及解決方法,感興趣的同學(xué)跟著小編一起來看看吧
    2023-08-08
  • React-Native之定時(shí)器Timer的實(shí)現(xiàn)代碼

    React-Native之定時(shí)器Timer的實(shí)現(xiàn)代碼

    本篇文章主要介紹了React-Native之定時(shí)器Timer的實(shí)現(xiàn)代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-10-10
  • 淺談React前后端同構(gòu)防止重復(fù)渲染

    淺談React前后端同構(gòu)防止重復(fù)渲染

    這篇文章主要介紹了淺談React前后端同構(gòu)防止重復(fù)渲染,首先解釋React前后端同構(gòu)、React首屏渲染的概念。然后通過這2個(gè)概念解決服務(wù)端渲染完成后瀏覽器端重復(fù)渲染的問題。有興趣的可以了解一下
    2018-01-01
  • React生命周期函數(shù)圖解介紹

    React生命周期函數(shù)圖解介紹

    生命周期函數(shù)指在某一時(shí)刻組件會(huì)自動(dòng)調(diào)用并執(zhí)行的函數(shù)。React每個(gè)類組件都包含生命周期方法,以便于在運(yùn)行過程中特定的階段執(zhí)行這些方法
    2022-11-11
  • react最流行的生態(tài)替代antdpro搭建輕量級(jí)后臺(tái)管理

    react最流行的生態(tài)替代antdpro搭建輕量級(jí)后臺(tái)管理

    這篇文章主要為大家介紹了react最流行的生態(tài)替代antdpro搭建輕量級(jí)后臺(tái)管理示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • react性能優(yōu)化達(dá)到最大化的方法 immutable.js使用的必要性

    react性能優(yōu)化達(dá)到最大化的方法 immutable.js使用的必要性

    這篇文章主要為大家詳細(xì)介紹了react性能優(yōu)化達(dá)到最大化的方法,一步一步優(yōu)化react性能的過程,告訴大家使用immutable.js的必要性,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • React鼠標(biāo)多選功能的配置方法

    React鼠標(biāo)多選功能的配置方法

    本文給大家分享React鼠標(biāo)多選功能,通過導(dǎo)入組件直接包裹已經(jīng)設(shè)計(jì)好的列表即可,操作簡(jiǎn)單方便,對(duì)React鼠標(biāo)多選相關(guān)知識(shí)感興趣的朋友一起看看吧
    2021-05-05
  • React星星評(píng)分組件的實(shí)現(xiàn)

    React星星評(píng)分組件的實(shí)現(xiàn)

    評(píng)分插件在購(gòu)物的應(yīng)用中經(jīng)??梢钥吹玫?,但是用著別人的總是沒有自己寫的順手,本文就使用React實(shí)現(xiàn)星星評(píng)分組件,感興趣的可以了解一下
    2021-06-06
  • React Native 腳手架的基本使用詳解

    React Native 腳手架的基本使用詳解

    這篇文章主要介紹了React Native 腳手架的基本使用詳解,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04

最新評(píng)論