Si le ownProps
est spécifié, react-redux passera les props qui ont été passés au composant à votre connect
fonctions. Ainsi, si vous utilisez un composant connecté comme ceci :
import ConnectedComponent from './containers/ConnectedComponent'
<ConnectedComponent
value="example"
/>
Le site ownProps
à l'intérieur de votre mapStateToProps
et mapDispatchToProps
Les fonctions seront un objet :
{ value: 'example' }
Et vous pourriez utiliser cet objet pour décider de ce qu'il faut retourner de ces fonctions.
Par exemple, sur un composant d'un article de blog :
// BlogPost.js
export default function BlogPost (props) {
return <div>
<h2>{props.title}</h2>
<p>{props.content}</p>
<button onClick={props.editBlogPost}>Edit</button>
</div>
}
Vous pourriez renvoyer les créateurs d'actions Redux qui font quelque chose à ce poste spécifique :
// BlogPostContainer.js
import { bindActionCreators } from 'redux'
import { connect } from 'react-redux'
import BlogPost from './BlogPost.js'
import * as actions from './actions.js'
const mapStateToProps = (state, props) =>
// Get blog post data from the store for this blog post ID.
getBlogPostData(state, props.id)
const mapDispatchToProps = (dispatch, props) => bindActionCreators({
// Pass the blog post ID to the action creator automatically, so
// the wrapped blog post component can simply call `props.editBlogPost()`:
editBlogPost: () => actions.editBlogPost(props.id)
}, dispatch)
const BlogPostContainer = connect(mapStateToProps, mapDispatchToProps)(BlogPost)
export default BlogPostContainer
Vous pouvez maintenant utiliser ce composant comme suit :
import BlogPostContainer from './BlogPostContainer.js'
<BlogPostContainer id={1} />
0 votes
Pourriez-vous être plus précis ? Qu'est-ce qui n'est pas clair dans les explications de cet argument dans la documentation dont vous donnez le lien ?
0 votes
Je cherchais simplement un autre exemple pratique où l'argument a été utilisé.
1 votes
Alors pourriez-vous modifier la question pour que ce soit clair ?
1 votes
@jonrsharpe Les docs de react-redux ne disent pas ce que c'est, juste qu'il existe, s'appelle ownProps et que l'arité de la fonction détermine si elle est passée - pas ce que c'est.
0 votes
@deb0ch Je ne sais pas ce qu'il disait il y a 18 mois, mais en ce moment il dit "les props passés au composant connecté" . Quoi qu'il en soit, le PO a depuis modifié sa question et a reçu et accepté une réponse.