Array forEach与Map对比:数组传参后无法渲染选项列表求助
问题解决:数组无法渲染为选项列表
你代码里用forEach遍历数组生成选项,但forEach没有返回值(实际返回undefined),所以React无法渲染出对应的<option>元素。
把forEach换成map方法就能解决问题,map会返回包含所有选项元素的数组,供React渲染:
const options_A = [ { label: "AA", value: "AA" }, { label: "BB", value: "BB" }, { label: "CC", value: "CC" }, ]
return ( <div> <select> { options_A.map(element => ( <option key={element.value} value={element.value}>{element.label}</option> )) } </select> </div> )
注意:给每个<option>加上key属性,这是React列表渲染的要求,能提升渲染性能并避免警告,这里用element.value作为key(确保值唯一即可)。
内容的提问来源于stack exchange,提问作者Honey Singh
相关产品推荐
相关产品推荐

