Denis Kulagin
Denis Kulagin

Reputation: 8937

Initial route params in React Navigation v5?

React Navigation v3 was featuring an initialRouteParams property to pass initial values to this.navigation.props. Is there a way to set initial route params to be accessed via route.params in the React Navigation v5?

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

Upvotes: 17

Views: 17188

Answers (1)

Denis Kulagin
Denis Kulagin

Reputation: 8937

It could be accomplished by passing initialParams to the Stack.Screen:

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

There is also a handy default syntax one can use (see No more getParam):

route.params?.userParam ?? 'defaultValue'

Upvotes: 28

Related Questions