web-dev-qa-db-fra.com

ReactJS - Passer les accessoires avec le composant Redirect

Comment devriez-vous transmettre des accessoires avec le composant Redirect sans les exposer dans l'URL?

Comme ceci <Redirect to="/order?id=123 />"? J'utilise react-router-dom.

17
Michiel

Vous pouvez transmettre des données avec Redirect comme ceci:

<Redirect to={{
            pathname: '/order',
            state: { id: '123' }
        }}
/>

et voici comment y accéder:

this.props.location.state.id

Le API construction pour passer l'état et une autre variable dans Redirect/History prop.

Source: https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/api/Redirect.md#to-object

43
Sakhi Mansoor

Vous pouvez utiliser l'état de l'historique du navigateur comme ceci:

<Redirect to={{
    pathname: '/order',
    state: { id: '123' }
}} />

Ensuite, vous pouvez y accéder via this.props.location.state.id

Source: https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/api/Redirect.md#to-object

10
Anas