这是我的代码,它会产生“预期的分配或函数调用,而是看到了表达式”错误。我个人没有看到任何错误,我的整理工作照常进行。我相信是JSHINT在这里叫我出来:

render() {
return (
  <div id="animalGallery">
    {this.props.displayData.map(eachProfilePic => {
      this.state.selected === eachProfilePic.iconID ? (
        <a
          class="animal selected"
          onClick={() => this.profilePicClick(eachProfilePic.iconID)}
        >
          <img src={eachProfilePic.iconID} />
        </a>
      ) : (
        <a
          class="animal"
          onClick={() => this.profilePicClick(eachProfilePic.iconID)}
        >
          <img src={eachProfilePic.iconID} />
        </a>
      );
    })}
  </div>
);}


它在我的代码的第四行中调用该错误,它似乎有任何错误吗?如果没有,是否还有另一种方法可以编写此代码而无需触发JSHINT?

最佳答案

您需要添加return或删除{}(或将其替换为())。在lambda周围使用{}时,它期望一个完整的函数体,而不仅仅是返回表达式。

关于javascript - 在ReactJS中使用内联和映射的语法错误/jshint,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54993680/

10-13 00:16