You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React中map方法使用问题:循环渲染组件无输出

问题原因与解决方案

你遇到的问题核心是map回调函数没有返回组件,导致遍历后没有生成可渲染的元素数组,所以浏览器无输出;而逐个调用组件时是直接返回了组件实例,因此能正常显示。

具体错误点

在App组件的map回调中,你用了大括号{}包裹代码,但没有用return语句返回<ExpenseItem>组件:

{items.map((val, i) => {
    <ExpenseItem key={i} title={val.title} amount={val.amount}/>
})}

箭头函数使用大括号时属于代码块模式,必须显式通过return返回值,否则默认返回undefined。map遍历后得到的是全为undefined的数组,React不会渲染这类内容。

两种修正方式

方式1:添加return语句

{items.map((val, i) => {
    return <ExpenseItem key={i} title={val.title} amount={val.amount}/>
})}

方式2:省略大括号(单行表达式模式)

如果回调只有返回组件这一行代码,可以去掉大括号,箭头函数会自动返回表达式结果:

{items.map((val, i) => 
    <ExpenseItem key={i} title={val.title} amount={val.amount}/>
)}

额外说明

你的ExpenseItem组件代码没有问题,修正App组件的map回调后,就能正常遍历渲染所有条目了。

内容的提问来源于stack exchange,提问作者Waqas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 20:16:11