列表

收藏848

阅读2239

更新时间2025-08-20

在 React 中,您将使用某种类型的循环来渲染列表。

JavaScript map() 数组方法通常是首选方法。

如果您需要复习 map() 方法,请查看 ES6 部分。


实例:

让我们渲染车库里的所有汽车:

function Car(props) {
  return 
  • I am a { props.brand }
  • ; } function Garage() { const cars = ['Ford', 'BMW', 'Audi']; return ( <>

    Who lives in my garage?

      {cars.map((car) => )}
    ); } const root = ReactDOM.createRoot(document.getElementById('root')); root.render();

    运行实例 »

    当您在 create-react-app 中运行此代码时,它会起作用,但您会收到一条警告,指出没有为列表提供"密钥" 项目。


    Keys

    Keys 键允许 React 跟踪元素。 这样,如果一个项目被更新或删除,只有该项目将被重新渲染,而不是整个列表。

    每个同级的 Keys 键必须是唯一的。 但它们可以在全球范围内复制。

    通常,密钥应该是分配给每个项目的唯一 ID。 作为最后的手段,您可以使用数组索引作为键。

    实例:

    让我们重构之前的示例以包含键:

    function Car(props) {
      return 
  • I am a { props.brand }
  • ; } function Garage() { const cars = [ {id: 1, brand: 'Ford'}, {id: 2, brand: 'BMW'}, {id: 3, brand: 'Audi'} ]; return ( <>

    Who lives in my garage?

      {cars.map((car) => )}
    ); } const root = ReactDOM.createRoot(document.getElementById('root')); root.render();

    运行实例 »


    学习训练

    练习题:

    添加允许 React 跟踪列表中元素的属性。

    function GroceryList() {
      const items = [
        {id: 1, name: 'bread'},
        {id: 2, name: 'milk'},
        {id: 3, name: 'eggs'}
      ];
    
      return (
        <>
          

    Grocery List

      {items.map((item) =>
    • ={item.id}>{item.name}
    • )}
    ); } const root = ReactDOM.createRoot(document.getElementById('root')); root.render();

    开始练习


    相关

    视频

    RELATED VIDEOS

    更多

    免费

    Web前端开发极速入门
    初级 Web前端开发极速入门

    219920次学习

    收藏

    免费

    前端入门_HTML5
    初级 前端入门_HTML5

    616946次学习

    收藏

    免费

    30分钟学会网站布局
    初级 30分钟学会网站布局

    238440次学习

    收藏

    免费

    CSS视频教程-玉女心经版
    初级 CSS视频教程-玉女心经版

    393054次学习

    收藏

    免费

    独孤九贱(1)_HTML5视频教程

    免费

    独孤九贱(6)_jQuery视频教程

    免费

    独孤九贱(7)_Bootstrap视频教程

    免费

    独孤九贱(2)_CSS视频教程
    初级 独孤九贱(2)_CSS视频教程

    229605次学习

    收藏

    科技资讯

    更多

    精选课程

    更多
    前端入门_HTML5
    前端入门_HTML5

    共29课时

    61.8万人学习

    CSS视频教程-玉女心经版
    CSS视频教程-玉女心经版

    共25课时

    39.4万人学习

    JavaScript极速入门_玉女心经系列
    JavaScript极速入门_玉女心经系列

    共43课时

    71万人学习

    独孤九贱(1)_HTML5视频教程
    独孤九贱(1)_HTML5视频教程

    共25课时

    61.7万人学习

    独孤九贱(2)_CSS视频教程
    独孤九贱(2)_CSS视频教程

    共22课时

    23万人学习

    独孤九贱(3)_JavaScript视频教程
    独孤九贱(3)_JavaScript视频教程

    共28课时

    33.9万人学习

    独孤九贱(4)_PHP视频教程
    独孤九贱(4)_PHP视频教程

    共89课时

    125.2万人学习

    关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号