• react简述-react基础-jsx语法-jsx表达式-jsx动态属性-jsx列表渲染


    react简述

    1.1、概述

    React 起源于Facebook的内部项目,它是一个用于构建用户界面的 javascript
    库,Facebook用它来架设公司的Instagram网站,并于2013年5月开源。 React
    拥有较高的性能,代码逻辑非常简单,越来越多的人已开始关注和使用它。认为它可能是将来 Web 开发的主流工具之一。
    React18是2022年3月29日正式发布,现在来说还是比较的新。

    1.2、特点

    💖声明式

    • 你只需要描述UI看起来是什么样式,就跟写HTML一样,React负责渲染UI,数据的声明

    💖基于组件

    • 构建管理自身状态的封装组件,然后对其组合以构成复杂的 UI。由于组件逻辑使用 JavaScript
      编写而非模板,因此你可以轻松地在应用中传递数据,并保持状态与 DOM 分离。

    💖学习一次,随处使用

    • 使用React可以开发Web应用(react-dom)也可以开发移动端(react-native)和小程序。

    jsx语法

    特点

    ast=》虚拟dom=》render真实dom
    

    由于通过React.createElement()方法创建的React元素有一些问题,代码比较繁琐,结构不直观,无法一眼看出描述的结构,不优雅,开发时写代码很不友好。
    React使用 JSX 来替代常规的JavaScript,JSX 可以理解为的JavaScript语法扩展(超集),它里面的标签申明要符合XML规范要求。


    💖jsx浏览器认识吗?
    答:浏览器只能识别 js,对于jsx不能识别。


    <!-- 1.引入react库文件 核心文件和dom解析文件 引入的顺序不能错 -->
    <script src="./js/react.js"></script>
    <script src="./js/react-dom.js"></script>
    <!-- 引入babel解析 -->
    <script src="./js/babel.js"></script>
    

    通过 jsx生成一个虚拟dom

    • jsx浏览不能直接解析 需要一个babel解析器,解析
    • jsx它必须要有一个顶层元素包裹
    • const vnode =
      你好React
    • 注意如果使用jsx则一定要把type类型修改为text/babel