繁体   English   中英

将 props 传递给另一个文件 redux 中的组件

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM