React是一个用于构建用户界面的Javascript库。
特点:声明式,组件化,移植性。
关键字:组件Component,状态组件props,应用state,第三方库。
JSX
JSX是JavaScript的语法扩展。
JSX用来声明React中的元素。
JSX中可疑使用JavaScript表达式,需要使用{}括起来。
JSX本身也是一种表达式,编译之后会生成JavaScript对象,所以可以在JavaScript语句中嵌入JSX。
JSX属性:
- 类似html标签的属性;
- 字符串类型的属性值用""包起来;
- 表达式类型的属性用{}包起来;
JSX标签可疑嵌套。
JSX可以防止XSS共计,因此可以在表达式中引用用户输入的内容;React DOM会在渲染之前把所有内容转换为字符串。
JSX代表Object,Babel转译器会把JSX转为一个React.createElement的调用。转换生成的内容称为React元素,React读取这些对象来构建DOM并保持数据一致。
JSX允许在大括号中嵌入任何的表达式。
元素渲染
元素是react的最小单位。
与浏览器的DOM不同,react元素实际上是普通的对象。
React DOM可以