官网分别有中英文两种:
中文官网:React 官方中文文档 – 用于构建用户界面的 JavaScript 库
英文官网:https://reactjs.org/
react是用于构建用户界面的JavaScript库,起源于Facebook的内部项目
由于react的设计思想十分独特,属于革命性创新,性能出众,代码逻辑却非常简单。所以,越来越多的人开始关注和使用它,认为它可能是将来web开发的主流工具。
react的好处:
注:在学习react之间我们所需要掌握的js知识有:es6语法、this发的指向、面向对象【原型、原型链、class类、继承】、模块化、柯里化函数等一些基础的js
使用方法:
第一种:使用npm安装库
方法二:直接进行引入链接即可
需要值得注意的是建议是用18版本以前的版本,因为18以后的版本语法有一定变化。
创建虚拟DOM对象,并进行渲染。
Document
(1)jsx语法:全称JavaScript XML。是一种JavaScript的语法扩展,运用于react架构中,其格式比较像是模板语言,但事实上完全是在JavaScript内部实现的 。元素是其构成react应用的最小单位,jsx就是用来声明react当中的元素,react使用jsx来描述用户界面。
(2)插值符号:{}
插值符号内可以写的内容:
1、表达式
2、数组
3、字符串
4、即时函数
5、布尔值
6、三目表达式
(3)js语句和js表达式
表达式:一个表达式会产生一个值,可以放在任何一个需要值的地方
js语句:
这里我不知道该如何组织我的语言咯,我就简单的说一下哈,剩下的自己理解哈哈哈~~~原谅我这小学语言水平组织能力
第一种方式:
样式放在head标签中写,和html+css写样式一样的,但不同在于引用样式的时候采用className属性进行引用。
第二种方式:
样式是在script中写以对象的形式,在引用时直接使用style={对象名}
另外一种我觉得差别不大,就和json一样,调用时采用对象.属性名
直接上代码哈哈:
2-样式处理
react元素的事件处理和DOM元素类似,知识在语法上有所不同:
组件的核心属性:state、props、prop-types、refs
state:React把组件看成是一个状态机(State Machines) 通过与用户的交互,实现不同状态,然后渲染ul,让用户界面和数据保持一致。React里,只需更新组件的 state,然后根据新的state重新渲染用户界面(不要操作DOM)
props:通过标签属性从组件外向组件内传递变化的数据,每个组件对象都会有props,组件标签的所有属性都保存在props中
prop-types:对props中的属性值进行类型限制和必要性限制
refs:用来绑定到render()输出的任何组件上。
当组件插入到DOM后,ref属性添加—个组件的引用于到this.refs
setState:设定状态
在开始上代码之前我们来简单回顾一下在JavaScript中ES5和ES6的面向对象
还有一个是关于继承的问题(es6):
关于组件的使用有三种写法:
- 函数式写法
- 双标签
- 单标签
组件的使用原理在于把各个代码块单独进行抽出,最终进行挂载;组件又分为有状态和无状态两种。
组件