美文网首页
react基础语法2:render函数渲染复杂数组,对象

react基础语法2:render函数渲染复杂数组,对象

作者: 转移到CSDN名字丹丹的小跟班 | 来源:发表于2021-01-19 08:49 被阅读0次

先看代码

import React from 'react';
import ReactDOM from 'react-dom';

let data = [
    {name: "dandan"},
    {name: "fufu"}
]
ReactDOM.render(<div>{data}</div>, document.getElementById("root"))
// 页面报错
// Objects are not valid as a React child (found: object with keys {name, age}). If you meant to render a collection of children, use an array instead.

这是因为在react中不能直接存放对象和函数数据类型(但是设置样式的style属性里面可以使用{{}}来放置对象),只能存放基本数据类型(布尔型什么都不显示,null, undefined也是jsx元素,为空,也什么都不显示);数组可以放在{}里面,但是会自动转换为字符串进行展示,且不能在数组里存放对象类型的值,只能存放基础数据类型的值;{}里面也不支持循环和判断语句(如if,for,foeEach......),但是可以使用三元运算符。

所以在jsx里渲染数组元素一般基于数组的map方法完成迭,并且需要给创建的元素一个唯一的key值(一般使用遍历的index作为key值)

ReactDOM.render(<div>{
    data.map((item, index) => {
        return <li key={index}> {item.name} </li>
    })
}</div>, document.getElementById("root"))

相关文章

  • react基础语法2:render函数渲染复杂数组,对象

    先看代码 这是因为在react中不能直接存放对象和函数数据类型(但是设置样式的style属性里面可以使用{{}}来...

  • 深入理解react笔记

    1. render函数没有渲染的作用,只是将jsx转译成一个react.createElement函数。 2.st...

  • React手记

    React手记 1、 2、React元素渲染 React元素渲染是通过方法ReactDOM.render(elem...

  • vue 渲染函数 & JSX

    渲染函数 render 通过渲染函数渲染组件 渲染后: JSX 通过以上方式创建虚拟DOM,语法比较繁琐。可以使用...

  • Vue render函数详解

    渲染函数 & JSX 基础[https://cn.vuejs.org/v2/guide/render-functi...

  • react基础语法1:render函数

    react-dom: 把jsx语法(react独有的语法)转换为真实的dom元素 最终渲染的index.html文...

  • React 性能优化 - 避免重复渲染

    对于函数组件是否需要再次渲染,可以根据 React.memo 与 React.useMemo 来优化。 函数组件优...

  • react 基础知识

    生命周期 旧 初始化阶段 由React.render 触发 -- 初次渲染 constructor() 构造函数...

  • 组件与props

    创建组件 函数式创建函数组件 ES6语法创建类组件 将组件渲染至页面 React约定,组件名称使用大写开头,如

  • react语法结构

    1.react JSX语法原理 react是函数式编程,使用jsx语法来渲染组件。jsx语法是合法的JavaScr...

网友评论

      本文标题:react基础语法2:render函数渲染复杂数组,对象

      本文链接:https://www.haomeiwen.com/subject/zgbtzktx.html