使用If Condition不返回函数中的值



如果不满足某个条件,我不想呈现一个函数。

runinrender(){
let data = this.props.loadedPolls;
return  data.map((element,i) => {
return (<div key={i} className='elementPoll'>
<ul>
<li>Complaint: <p> {element.question}</p></li>
<li>Author: <p>{element.createdBy}</p> </li>

<li><ModalComplaint useris={this.state.useris} orderMe={i} updatedParentAndDB={this.updatedParentAndDB} elementname={element.question} elementId={element._id} elementoptions={element.options} elementvotes={element.options.votes}/></li>
</ul>

</div>)
});

}

本质上,我想添加

if the element.question.charAt(0) == 'K' only then return values of complaint, ModalComplaint and author, else return nothing

我尝试在多个位置添加if语句;然而,似乎都不起作用。感谢您的帮助。

在映射数组之前,可以使用filter缩小数组的范围。

阵列原型过滤器

runinrender(){
let data = this.props.loadedPolls;
return data.filter(element => element.question.charAt(0) === 'K').map((element,i) => {
return (<div key={i} className='elementPoll'>
<ul>
<li>Complaint: <p> {element.question}</p></li>
<li>Author: <p>{element.createdBy}</p> </li>
<li><ModalComplaint useris={this.state.useris} orderMe={i} updatedParentAndDB={this.updatedParentAndDB} elementname={element.question} elementId={element._id} elementoptions={element.options} elementvotes={element.options.votes}/></li>
</ul>
</div>)
});
}

最新更新