React 基础知识 —— JSX | 学习笔记

简介: 快速学习 React 基础知识 —— JSX

开发者学堂课程【React前端开发入门与实战:React 基础知识 —— JSX 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/365/detail/4355


React 基础知识 —— JSX

内容介绍:

一、JSX 概述

二、JSX 嵌入变量

三、JSX SPREAD

 

本节主要介绍 react 技术支持, jsx ,事件与传统事件不一样,状态和组合,表单特殊的地方,最后是它的 API 介绍。

 

一、JSX 概述

首先是 jsx,jsx 不是一种合法js语言,浏览器是不支持这样的语言,没有写 type 的话浏览器是不能运行的,这种语法是由于标签语法转换为标签应用。

1. 概述

类似 xml 的语法,用来描述组件树,组件可以互相嵌套,基于这一点发明了一种类似 xml 语法,用来生成一颗组件树:

<div classname="x ">

//有内容可以结束

<a href="#">#</a>

<component x="y">1</component>

</div>

//实质上它编译出的代码是一下这样的

React.createElement( 'div ' ,{className: 'x'

},[

React.createElement( 'a' ,{href : '#'},'#' ),React.createElement (Component,{x:'y'},1);

]);

注意和 html 语法不太一样,比如必须是驼峰命名,以及属性名不能和 js 关键字冲突,例如: className,readQnly 。

最终执行的是返回了一颗对象树的根结点,class 是不能用的,因为他是保留的关键字,所以要使用 className 代替。

组件命名必须是大写,大写的话是自定义组件,小写的是普通的 html 标签。

 

二、JSX 嵌入变量

Jsx 很重要的作用是嵌入到 javascript ,和一般的模板语言差不多,使用两个括号括起来

可以通过{变量名}来将变量的值作为属性值

var x = 'http : //www.alipay .com' ;

//ji

Var y = <a href= {x}target="_blank">

alipay. com</a>;

React.render(y,document.getElementById( ' container'));

代码运行结果:

image.png

生成链接,一点的话会跳转到页面

 

三、JSX SPREAD

很多时候我们从后端搞一个对象,批量渲染

可以用通过{ ...obj }来批量设置一个对象的键值对到组件的

属性,注意顺序

var × = "http : / / www.alipay. com ' ;

//把所有的键值对一起批量设置

var obj = {

href : "http:/ /www.taobao.com" ,

target: " _blank"

}

var y = <a {...obj} href= {x}>alipay. com</a> ;

React.rendercy,document.getElementById( ' container " ));

相关文章
|
8月前
|
前端开发 JavaScript 开发者
React:JSX语法入门
React:JSX语法入门
110 0
|
4月前
|
前端开发 JavaScript
学习react基础(3)_setState、state、jsx、使用ref的几种形式
本文探讨了React中this.setState和this.state的区别,以及React的核心概念,包括核心库的使用、JSX语法、类与函数组件的区别、事件处理和ref的使用。
97 3
学习react基础(3)_setState、state、jsx、使用ref的几种形式
|
5月前
|
XML JavaScript 前端开发
React Jsx语法入门
【8月更文挑战第13天】React Jsx语法入门
50 4
|
2月前
|
JavaScript 前端开发 容器
React零基础入门02--JSX语法基础
React零基础入门02--JSX语法基础
React零基础入门02--JSX语法基础
|
2月前
|
XML 前端开发 JavaScript
react之了解jsx
react之了解jsx
|
3月前
|
XML 前端开发 JavaScript
react学习笔记一:入门级小白到脚手架(create-react-app)开发项目
这篇文章是React的学习笔记,覆盖了从React的基础用法到高级特性,包括组件化、状态管理、生命周期、虚拟DOM等主题,适合React初学者参考。
127 0
react学习笔记一:入门级小白到脚手架(create-react-app)开发项目
|
3月前
|
XML 前端开发 JavaScript
React JSX
React 使用 JSX(一种类似 XML 的 JavaScript 语法扩展)来替代传统 JavaScript 编写 UI。JSX 使代码更简洁、执行更快且类型安全。例如,`&lt;h1&gt;Hello, world!&lt;/h1&gt;` 实际上是创建一个 React 元素,通过 `ReactDOM.render()` 渲染到 DOM。注意,JSX 中使用 `className` 替代 HTML 的 `class` 属性。
|
2月前
|
存储 前端开发 JavaScript
react之jsx编译原理
react之jsx编译原理
|
3月前
|
XML 前端开发 JavaScript
React JSX
10月更文挑战第7天
21 2
|
5月前
|
前端开发 JavaScript
React Server Component 使用问题之添加jsx的组件化能力,如何操作
React Server Component 使用问题之添加jsx的组件化能力,如何操作