[英]Passing props to component in another file redux
我需要使用 redux 将 props 传递给位于另一个文件中的组件。 将它作为道具传递给组件不起作用。 任何帮助将不胜感激,刚开始学习 Redux!
export class DisconnectedAllDogs extends React.Component { render() { return ( <div> <div className='all-dogs'> <h1>Peter's Park</h1> </div> <div> { this.props.dogs.map(dog => { return <DogCard dog = {dog}/> })} </div> </div> ) } } export const mapStateToProps = (state) => { return { dogs: state.dogs } } export const mapDispatchToProps = (dispatch) => { return { } } export default connect(mapStateToProps, mapDispatchToProps)(DisconnectedAllDogs)
const DogCard = () => { return ( <div class='dog-card'> <Link key={ this.props.dog.id }>{ this.props.dog.name }</Link> </div> ) } export default DogCard
我认为第二个组件(DogCard)的变体如下有望解决您可能面临的问题。
const DogCard = (props) => {
return (
<div class='dog-card'>
<Link key={ props.dog.id }>{ props.dog.name }</Link>
</div>
)
}
export default DogCard
关于另一个组件,我认为你在那里做得很棒。 但如果您遇到问题,请随意添加一个构造函数:
export class DisconnectedAllDogs extends React.Component {
constructor(props){
super(props);
this.state = null;
}
render() {
return (
<div>
<div className='all-dogs'>
<h1>Peter's Park</h1>
</div>
<div>
{ this.props.dogs.map(dog => {
return <DogCard dog = {dog}/>
})}
</div>
</div>
)
}
}
export const mapStateToProps = (state) => {
return {
dogs: state.dogs
}
}
export const mapDispatchToProps = (dispatch) => {
return {
}
}
export default connect(mapStateToProps, mapDispatchToProps)(DisconnectedAllDogs)
真的希望它有帮助......
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.