【问题标题】:How to Dynamically Render Cards in React Semantic UI如何在 React 语义 UI 中动态渲染卡片
【发布时间】:2018-10-02 01:19:50
【问题描述】:

我已将我的 redux 存储映射到道具,但我现在无法动态渲染它。我也尝试过projectCards(){...} 语法,但那完全是在黑暗中拍摄。我的控制台日志显示了我想要的对象。我也尝试使用projects.map,但我不认为我想将返回值放入一个新数组中。我只想要页面上更多的<Card/> 项目,动态呈现。我哪里做错了?任何帮助,将不胜感激。

Class Projects extends...
.
.
.
 projectCards = () => {
  if ( this.props.projects.length !== 0 ) {
   this.props.projects.forEach((project) => {
     return <Card fluid color='green' header={project.name} />
  })
 }
}

 render(){
  return(
    <Container>
      <br/>
      <Card.Group>
        <Card fluid color='green' header='Option 1' />
        <Card fluid color='blue' header='Option 2' />
        <Card fluid color='red' header='Option 3' />
        { this.projectCards() }
      </Card.Group>
    </Container>
  )
 }
}

【问题讨论】:

标签: reactjs react-redux semantic-ui semantic-ui-react


【解决方案1】:

试试这个:

projectCards = () => {
  if ( this.props.projects.length !== 0 ) {
    return this.props.projects.map( project => 
       <Card fluid color='green' header={project.name} />
    )
  }
}

【讨论】:

  • 成功了!所以我想返回一个&lt;Card&gt;s 的数组?
  • 知道了!但是,你认为有可能使函数返回值不止一次吗?返回第一个Card component后,就完成了!其他卡片组件将没有机会复活。顺便说一句,你为什么不想return an array of &lt;Card&gt;s
  • 这很好。今天不是我第一次在同一个函数中尝试多个 return 语句!
  • 我无法编辑它,但您的帖子中缺少一个卷曲。感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 2021-04-18
  • 1970-01-01
  • 2019-09-03
  • 2015-09-07
  • 2021-09-07
  • 2018-10-11
  • 1970-01-01
  • 2018-11-22
相关资源
最近更新 更多