【问题标题】:Initial route params in React Navigation v5?React Navigation v5 中的初始路由参数?
【发布时间】:2020-05-23 17:31:20
【问题描述】:

React Navigation v3 具有 initialRouteParams 属性,用于将初始值传递给 this.navigation.props。有没有办法在 React Navigation v5 中设置要通过 route.params 访问的初始路由参数?

function MainScreen({route, navigation}) {
    return (
        // how to pass default values to route in here?
        // route.params.userParam ?
        ...
    );
}

【问题讨论】:

    标签: react-native react-navigation react-navigation-v5


    【解决方案1】:

    这可以通过将 initialParams 传递给 Stack.Screen 来完成:

    <Stack.Screen
        name="Main"
        component={MainScreen}
        initialParams={{ /* initialParams */ }}
    />
    

    还有一种方便的默认语法可以使用(参见No more getParam):

    route.params?.userParam ?? 'defaultValue'
    

    【讨论】:

    • 当“主”屏幕实际上是另一个 Stack.Navigator 时,这似乎不起作用。然后参数不会传递到此导航器中呈现的屏幕。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-22
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多