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>
}
相关推荐
人无远虑必有近忧!11 分钟前
fetch请求图片报跨域
前端·javascript
谢院柯12 分钟前
解决修改 node_modules 依赖库源码后重复安装问题的几种方案
前端
疯狂打码的少年14 分钟前
【程序语言与编译】NFA转DFA(子集构造法)
前端·笔记
半只小闲鱼16 分钟前
合并多个excel文件到一个文件中
前端·python·数据分析
咸甜适中24 分钟前
rust语言学习笔记Trait(十七)Send、Sync(线程间数据所有权)
笔记·学习·rust
fobwebs26 分钟前
Chrome谷歌浏览器多开教程,如何在电脑上同时登录多个GMAIL账号
前端·chrome·多开·同时登录多个gmail
H__Rick27 分钟前
C51学习-DAY7
单片机·嵌入式硬件·学习·51单片机
dtq042431 分钟前
C语言刷题函数1-判断素数(分支语句,函数两种方法)
c语言·开发语言·学习
前端 贾公子34 分钟前
小程序蓝牙打印探索与实践 (最终章)
前端·微信小程序·小程序