Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript map函数中的React条件语句_Javascript_Reactjs - Fatal编程技术网

Javascript map函数中的React条件语句

Javascript map函数中的React条件语句,javascript,reactjs,Javascript,Reactjs,我正在显示来自谷歌地图API的评论。在我的地图功能中,我只想显示高于1评级的评论。如何更新地图功能以仅显示review.rating>1的评论 {this.state.reviews && this.state.reviews.map((review, index) => ( <div key={index} className="review"> <p>{review.text}</p> </div

我正在显示来自谷歌地图API的评论。在我的地图功能中,我只想显示高于
1
评级的评论。如何更新地图功能以仅显示
review.rating>1
的评论

{this.state.reviews && this.state.reviews.map((review, index) => (
    <div key={index} className="review">
        <p>{review.text}</p>
    </div>
))}
{this.state.reviews&&this.state.reviews.map((review,index)=>(
{review.text}

))}
只需在映射之前过滤它们:

{this.state.reviews
    .filter((review) => review.rating > 1) // get only reviews with rating > 1
    .map((review, index) => (
       <div key={index} className="review">
          <p>{review.text}</p>
       </div>
    ))
}
{this.state.reviews
.filter((review)=>review.rating>1)//仅获取评级>1的评论
.map((评论,索引)=>(
{review.text}

)) }
如果出于某种原因,您不想调用数组上的
.filter
方法,您可以这样做。基本上,您在返回时调用了一个三元运算符。如果你需要更多的解释,请告诉我

{this.state.reviews&&this.state.reviews.map((review,index)=>(
综述:指数>1
? (
{review.text}

) :null
))}
如果(review.rating==1)返回null,您可以将JSX更改为常规箭头函数并运行类似于
的检查,而不是立即返回JSX