javascript - if else 在分支中使用 map 函数的 ReactJS 语法

标签 javascript reactjs

我是 React 的新手并且在语法上苦苦挣扎。我将此 block 作为渲染函数中的 div。我所做的每一项更改都源于一个或另一个语法错误,或者根本不起作用。

<div className="skillSection">
{        
    if (this.state.challengeChoices.length < 0) {                               
         this.state.challengeChoices.map((para2, i) =>
             <ChallengeSkill key={i} {...para2} callback={this.madeSelection} />)
    }
    else {
        return <div>Hello world</div>
    }   
}   
</div>

最佳答案

推荐做一个函数:

renderSkillSection: function(){
    if (this.state.challengeChoices.length < 0) {                               
        return this.state.challengeChoices.map((para2, i) =>
             <ChallengeSkill key={i} {...para2} callback={this.madeSelection} />)
    }
    else {
        return <div>Hello world</div>
    }   
},

render: function(){
  return (<div className="skillSection">
    {this.renderSkillSection()}   
  </div>)
}

关于javascript - if else 在分支中使用 map 函数的 ReactJS 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41581518/

相关文章:

Javascript:检查数组中的任何元素是否包含字符串的一部分

javascript - 在 vuejs 应用程序中集成 openlayers

javascript - Ace Editor 美化扩展未按预期将 HTML 格式化为新行

javascript - 使用 React Router,我如何为 HTML 元素分配一个类?

javascript - 如何将 mailerlite.com 注册表单与 React 集成?

reactjs - React 18&react-i18next Trans组件插值问题

javascript - 纯 Javascript 沙盒

javascript - 如何确定或分区 1 个大的 Javascript 文件

javascript - ReactJS:使用 JSX 以编程方式更改组件标签

javascript - react axios 形式