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

React类组件调用遍历函数后name属性未在页面显示是什么原因

问题原因

你封装的showItems方法缺少返回语句,导致调用后返回值为undefined,因此渲染层没有拿到遍历生成的元素数组,自然不会显示对应内容。
你在map回调内部打印能拿到数据,仅能说明map方法本身正常执行,但遍历生成的React元素数组没有被返回给render函数使用。

修复方案

给showItems方法加上return语句,同时建议给遍历生成的元素添加唯一key属性(React列表渲染的强制要求,避免diff警告),修正后的代码如下:

// 修正后的showItems方法
showItems() {
  // 新增return,将map生成的元素数组返回
  return this.state.products.map((el) => {
    // 绑定唯一key,值选数组中唯一不变的id即可
    return <div key={el.id}>{el.name}</div>;
  });
}

也可以用箭头函数隐式返回简化写法:

showItems() {
  return this.state.products.map(el => <div key={el.id}>{el.name}</div>)
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 19:15:00