总结起源: 掘金作者 itclanCoder
1. reactJS 是什么
用于构建用户界面的javascript库,MVC架构中的V层
- 申明式开发
面向数据编程,只有把数据构建好了就能够了的,react会主动的帮你去构建网站,把数据能够了解为图纸,图纸做好了之后,react会主动的联合这张图纸帮忙你去构建这个大厦,去构建整个页面的DOM,数据是什么,页面就显示什么,这种申明式的开发帮忙咱们节约掉大量的DOM操作代码,这是react编程带来的一个劣势)
2. react 能够做什么
- 写web利用(网站,pc端,挪动端等,例如:知乎,简书等)
- 桌面客户端应用软件(相似vscode或者一些报表软件携带窗口的利用)
- webApp--react native,混合开发利用。目前曾经开发了RN 我的项目,0.59版本反对了HOOKs。如果纯熟了react,开发RN 不是问题
- 服务器端利用(java,php等后端语言无能的事件,react也无能)
3. react 中的组件
我集体的了解,react组件Component不是UI组件,它是将某个特定的性能独立,能够重复使用的代码。 把一个大的利用分解成若干个小的组件,每个组件只须要关注小范畴的特定性能就能够了。
react 利用就是由组件构建成的。非常适合用户交互组件
4. react 特点
- 虚构DOM
通过DOM-DIFF办法算法,智慧更新由差别的局部,不必渲染整个页面,提高效率
- 组件化
把页面分成若干个组件,组件中蕴含逻辑构造和款式 组件只蕴含本身逻辑,更新组件的时候能够预测,利于保护整个页面拆分多个组件,能够做到重用
单项数据流
- 单向数据流(父组件容许向子组件传值,然而子组件你只能去应用父组件),子组件并不能间接的去改写这个值,只能单向的传递,然而你不能反过来的给我批改,想要达成这一目标,子组件调用父组件的办法,通过在父组件中扭转本人来操作,保护代码起来比拟不便)
- 能够与其余框架并存(Jq,Angular等) 数据是从顶层组件传递到子组件中 数据可控