React 从入门到入土(一)-- 基础知识以及 jsx语法

简介: 一、React 简介

一、React 简介

1. 关于 React

整几个面试题来认识一下~~


什么是 React ?


React 是一个用于构建用户界面的 JavaScript 库。


是一个将数据渲染为 HTML 视图的开源 JS 库

它遵循基于组件的方法,有助于构建可重用的 UI 组件

它用于开发复杂的交互式的 web 和移动 UI

React 有什么特点?


使用虚拟 DOM 而不是真正的 DOM

它可以用服务器渲染

它遵循单向数据流或数据绑定

高效

声明式编码,组件化编码

React 的一些主要优点?


它提高了应用的性能

可以方便在客户端和服务器端使用

由于使用 JSX,代码的可读性更好

使用React,编写 UI 测试用例变得非常容易

2. Hello React

首先需要引入几个 react 包,我直接用的是老师下载好的


React 核心库、操作 DOM 的 react 扩展库、将 jsx 转为 js 的 babel 库

image.png

const VDOM = <h1>Hello,React</h1>
ReactDOM.render(VDOM,document.querySelector(".test"))

3. 虚拟 DOM 和真实 DOM 的两种创建方法

3.1 JS 创建虚拟 DOM

//1.创建虚拟DOM,创建嵌套格式的dom
const VDOM=React.createElement('h1',{id:'title'},React.createElement('span',{},'hello,React'))
//2.渲染虚拟DOM到页面
ReactDOM.render(VDOM,document.querySelector('.test'))

3.2 Jsx 创建虚拟DOM

//1.创建虚拟DOM
  const VDOM = (  /* 此处一定不要写引号,因为不是字符串 */
      <h1 id="title">
      <span>Hello,React</span>
    </h1>
  )
//2.渲染虚拟DOM到页面
  ReactDOM.render(VDOM,document.querySelector('.test'))

js 的写法并不是常用的,常用jsx来写,毕竟JSX更符合书写的习惯

二、jsx 语法

1.定义虚拟DOM,不能使用“”  

2.标签中混入JS表达式的时候使用{}

id = {myId.toUpperCase()}

3.样式的类名指定不能使用class,使用className

4.内敛样式要使用{{}}包裹

style={{color:'skyblue',fontSize:'24px'}}

5.不能有多个根标签,只能有一个根标签  

6.标签必须闭合,自闭合也行  

7.如果小写字母开头,就将标签转化为 html 同名元素,如果 html 中无该标签对应的元素,就报错;如果是大写字母开头,react 就去渲染对应的组件,如果没有就报错

记几个

1. 注释

写在花括号里

ReactDOM.render(
    <div>
    <h1>小丞</h1>
    {/*注释...*/}
     </div>,
    document.getElementById('example')
);

2. 数组

JSX 允许在模板中插入数组,数组自动展开全部成员

var arr = [
  <h1>小丞</h1>,
  <h2>同学</h2>,
];
ReactDOM.render(
  <div>{arr}</div>,
  document.getElementById('example')
);

tip: JSX 小练习

根据动态数据生成 li

const data = ['A','B','C']
const VDOM = (
    <div>
        <ul>
            {
                data.map((item,index)=>{
                    return <li key={index}>{item}</li>
                })
            }
        </ul>
    </div>
)
ReactDOM.render(VDOM,document.querySelector('.test'))

溜了溜了,累了累了

相关文章
|
18天前
|
前端开发 JavaScript 开发者
React:JSX语法入门
React:JSX语法入门
23 0
|
1月前
|
XML 前端开发 JavaScript
【前端】深入了解React JSX语法及实例应用
【前端】深入了解React JSX语法及实例应用
15 0
|
2月前
|
前端开发 JavaScript 安全
react为什么要使用JSX
react为什么要使用JSX
20 1
|
3月前
|
XML JavaScript 前端开发
说说React jsx转换成真实DOM的过程?
说说React jsx转换成真实DOM的过程
17 0
|
3月前
|
JSON 前端开发 JavaScript
React源码解析-JSX
React源码解析-JSX
60 1
|
8天前
|
前端开发 JavaScript API
如何学习react
【4月更文挑战第9天】 学习React前,需掌握JavaScript基础,了解React的JSX、组件、props、state和生命周期等概念。安装Node.js和npm,用Create React App搭建环境。学习核心API,如React.createElement、React.render等,并阅读官方文档。实践项目,从Todo List开始,逐渐挑战复杂应用。同时,学习相关技术如Redux、React Router,并参与社区交流,持续关注React新发展。持之以恒,祝学习顺利!
25 10
|
2月前
|
开发框架 前端开发 JavaScript
从零开始学习React Native开发
React Native是一种基于React框架的移动端开发框架,使用它可以快速地构建出高性能、原生的移动应用。本文将从零开始,介绍React Native的基础知识和开发流程,帮助读者快速入门React Native开发,并实现一个简单的ToDo应用程序。
|
4月前
|
人工智能 JSON 前端开发
react17+ts 学习
react17+ts 学习
|
1月前
|
运维 JavaScript 前端开发
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
|
2月前
|
存储 前端开发 JavaScript
从零开始学习React Native开发
【2月更文挑战第1天】React Native是一种跨平台的移动应用程序框架,可以使用JavaScript和React来构建Android和iOS应用程序。本文将带您从零开始学习React Native开发,涵盖了基础知识、组件、样式、布局、API等方面。