在我们处理数据时,假如我们现在有一个用户列表存放到数组中

const users = [{ username: 'Jerry', age: 21, gender: 'male' },{ username: 'Tomy', age: 22, gender: 'male' },{ username: 'Lily', age: 19, gender: 'female' },{ username: 'Lucy', age: 20, gender: 'female' }
]

现在想要将数组里面的数据渲染到我们的页面上时需要怎么做呢,在之前读react的小书时表达式中插入{}里面可以存放任何数据,如果我们将jsx里面塞入一个数组,这个数组里面放了一些jsx的元素可以看到会正常显示

那么将数组对象存放到我们的{}中

const users = [{ username: 'Jerry', age: 21, gender: 'male' },{ username: 'Tomy', age: 22, gender: 'male' },{ username: 'Lily', age: 19, gender: 'female' },{ username: 'Lucy', age: 20, gender: 'female' }
]
class Index extends Component {render () {const usersElements = [] // 保存每个用户渲染以后 JSX 的数组for (let user of users) {usersElements.push( // 循环每个用户,构建 JSX,push 到数组中<div><div>姓名:{user.username}</div><div>年龄:{user.age}</div><div>性别:{user.gender}</div><hr /></div>)}return (<div>{usersElements}</div>)}
}
ReactDOM.render(<Index />,document.getElementById('root')
)

就可以进行如下的处理

通过for of语句来进行遍历,将我们的jsx进行罗列渲染

但是在一般情况下不会手动来写循环来构建jsx的结构,一般会用es6中自带的map属性,

const users = [{ username: 'Jerry', age: 21, gender: 'male' },{ username: 'Tomy', age: 22, gender: 'male' },{ username: 'Lily', age: 19, gender: 'female' },{ username: 'Lucy', age: 20, gender: 'female' }
]
class User extends Component {render () {const { user } = this.propsreturn (<div><div>姓名:{user.username}</div><div>年龄:{user.age}</div><div>性别:{user.gender}</div><hr /></div>)}
}
class Index extends Component {render () {return (<div>{users.map((user) => <User user={user} />)}</div>)}
}
ReactDOM.render(<Index />,document.getElementById('root')
)

这里通过在render中来进行map遍历调用user组件,在user组件中来进行属性的调用

在我们的列表渲染中我们需要给react一个key来理解我们的列表,需要对元素来进行唯一的标识

react小书,怎么渲染列表(react)相关推荐

  1. React.js 小书 Lesson12 - state vs props

    React.js 小书 Lesson12 - state vs props 本文作者:胡子大哈 本文原文:http://huziketang.com/books/react/lesson12 转载请注 ...

  2. React.js 小书 Lesson18 - 挂载阶段的组件生命周期(一)

    React.js 小书 Lesson18 - 挂载阶段的组件生命周期(一) 本文作者:胡子大哈 本文原文:http://huziketang.com/books/react/lesson18 转载请注 ...

  3. web前端高级React - React从入门到进阶之React条件渲染

    系列文章目录 第一章:React从入门到进阶之初识React 第一章:React从入门到进阶之JSX简介 第三章:React从入门到进阶之元素渲染 第四章:React从入门到进阶之JSX虚拟DOM渲染 ...

  4. python网页前端和react有什么区别_Vue 和 React 的优点分别是什么?

    谢邀.这个问题其实已经不少人邀请过,在我的 timeline 上悬浮了挺久.为什么现在突然愿意回答一下呢? 2019 年已经行至年中,Vue 即将演进到 v3.0,刚刚过去的端午节 @尤雨溪 也做了 ...

  5. React.js 小书 Lesson14 - 实战分析:评论功能(一)

    React.js 小书 Lesson14 - 实战分析:评论功能(一) 本文作者:胡子大哈 本文原文:http://react.huziketang.com/blog/lesson14 转载请注明出处 ...

  6. React.js 小书 Lesson27 - 实战分析:评论功能(六)

    React.js 小书 Lesson27 - 实战分析:评论功能(六) 本文作者:胡子大哈 本文原文:http://huziketang.com/books/react/lesson27 转载请注明出 ...

  7. React.js 小书 Lesson15 - 实战分析:评论功能(二)

    作者:胡子大哈 原文链接: http://huziketang.com/books/react/lesson15 转载请注明出处,保留原文链接和作者信息. 上一节我们构建了基本的代码框架,现在开始完善 ...

  8. React.js小书总结

    (迁移自旧博客2017 08 27) 第一阶段 react的组件相当于MVC里面的View. react.js 将帮助我们将界面分成了各个独立的小块,每一个块就是组件,这些组件之间可以组合.嵌套,就成 ...

  9. React.js 小书 Lesson5 - React.js 基本环境安装

    React.js 小书 Lesson5 - React.js 基本环境安装 本文作者:胡子大哈 本文原文:http://huziketang.com/books/react/lesson5 转载请注明 ...

  10. React.js 小书 Lesson24 - PropTypes 和组件参数验证

    作者:胡子大哈 原文链接: http://huziketang.com/books/react/lesson24 转载请注明出处,保留原文链接和作者信息. 我们来了到了一个非常尴尬的章节,很多初学的朋 ...

最新文章

  1. beeline 将查询的数据导出来_滴滴大数据安全权限实践
  2. Node.js调用C#代码
  3. Broadcast应用场景分析
  4. C语言——第六周作业
  5. docker客户端连接远程docker服务端(export方式)
  6. mysql 轨迹数据存储_python爬虫26 | 把数据爬取下来之后就存储到你的MySQL数据库...
  7. nfs搭建和可能的问题
  8. python三级联动菜单_2分钟制作智能式联动下拉菜单,轻松搞定重复内容,录入不出错...
  9. iOS - 获取状态栏和导航栏尺寸(宽度和高度)
  10. 小区物业管理系统设计思想+源码
  11. 解决SVN语言包安装后无法出现下拉框选择
  12. Windows电脑端有什么好用的便签工具?
  13. 现代制造技术——金属切削原理
  14. 【复杂网络】最清晰最准确理解什么是“结构洞(Structural Hole)”?
  15. Apache的网页优化!!给你的网页套上一层层保护罩(网页压缩、网页缓存、隐藏版本信息、设置防盗链)
  16. 树莓派+欧西亚室外温度湿度传感器+Arduino Nano+433Mhz接收模块+RRDTOOL制作室内室外温湿度记录监控系统
  17. u-boot启动流程分析
  18. ubuntu下重启tomcat
  19. Python 编译阶段 -- 从 CST 到 AST
  20. 【大全】深度强化学习入门到精通

热门文章

  1. vc++键盘钩子和鼠标钩子
  2. 吐血分享9个软件下载网站以及那些开发者大佬的传奇人生
  3. 如何删除永中集成office 2009
  4. 【代码之路】我和代码的这两年,一路风雨,终见彩虹
  5. c语言实验报告4结构体,c语言实验报告结构体.doc
  6. Zigbee和wifi信道设置避免同频干扰
  7. 摩尔斯电码对照表—Morse code
  8. 光环PMP 三模模拟题
  9. 提升C4D工作效率的30个快捷键
  10. Mysql根据日志恢复数据