React 学习-6-列表 & keys

1.生成列表的方式:使用map()循环数组,放入ul,li中,并将数组的index作为唯一key。key通常保存在ul上,而非单个元素li中.按照此思路手写代码如下:

html 复制代码
1.创建div
<div id="test"></div>

2创建数组并为div绑定元素
const data= [1, 2, 3, 4, 5];

ReactDOM.render(
  //引入要加载的元素并传入数组,自定义一个
 <ListArrayTestlistData={data}/>,
document.getElementById("test")
)

3.创建render函数中自定义的组件
写法一:
function ListArrayTest(props){
  const listData= props.listData
  const LiLists = listData.map((item,index)=> 
  //此时若想将index绑定到ul上,需要将ul抽取,新建函数用来存放li
    <liList key={index} item={item} />
  )
  return (
   <ul>
    {liLists }
   </ul>
  )
}

function LiList(props){
  return  <li>{props.item}</li>
}

写法二:
function ListArrayTest(props){
  const listData= props.listData
 
  return (
   <ul>
    { listData.map((item,index)=> 
        //此时若想将index绑定到ul上,需要将ul抽取,新建函数用来存放li
        <LiList key={index} item={item} />
      )
    }
   </ul>
  )
}

function liList(props){
  return  <li>{props.item}</li>
}
相关推荐
不会敲代码14 小时前
手写 Mini React:从 JSX 到虚拟 DOM 再到 render,搞懂 React 底层原理
前端·javascript·react.js
AI机器学习算法5 小时前
《动手学深度学习PyTorch版》笔记
人工智能·学习·机器学习
贺一航【Niki】5 小时前
【学习笔记】杂乱知识
笔记·学习
kyriewen5 小时前
你的代码仓库变成“毛线团”了?Monorepo 用 Turborepo 拆成“乐高积木”
前端·javascript·面试
身如柳絮随风扬5 小时前
你知道什么是 Ajax 吗?—— 从入门到原理,一篇彻底搞懂
前端·ajax·okhttp
旷世奇才李先生5 小时前
Vue3\+TypeScript 2026实战——企业级前端项目架构搭建与性能优化全指南
前端·架构·typescript
白雪茫茫6 小时前
监督学习、半监督学习、无监督学习算法详解
python·学习·算法·ai
Beginner x_u6 小时前
前端八股整理(工程化 02)|CommonJS/ESM、Webpack Loader/Plugin 与Vite 对比
前端·webpack·node.js·plugin·loader
openKaka_6 小时前
createRoot 到底创建了什么:FiberRootNode 和 HostRootFiber 的初始化过程
前端·javascript·react.js
习明然7 小时前
UniApp开发体验感受总结
前端·uni-app