React 学习笔记:1-react 入门
接下来的项目里有用到react,最近一段时间主要关注于react 的学习。大部门都是网上的资料,学习整理并记录,加深记忆。
React 是Facebook推出的用来构建用户界面的JavaScript库。具备特性:
不是一个MVC框架,主要用于构建UI, 可以认为是MVC中的V
不适用模板
相应式更新非常简单,具有较高的性能,代码逻辑简单
特点:
1. 声明式设计,采用声明范式,可以轻松描述应用
2. 高效。react通过对DOM的模拟,最大限度的减少与DOM的交互。当DOM树的状态需要发生变化时,虚拟DOM机制会通过一系列高效算法将前后DOM树进行对比,然后React只针对不一样的区域DOM进行响应的修改,从而实现最高效的DOM操作和渲染。如果我们修改了DOM树上一些节点对应绑定的state,React会立即将它标记为“脏状态”,在一个event loop结束时,React会计算得到树上需要修改的地方及他们的最终状态,然后只针对这些地方进行一次性的重新渲染。
3. 灵活。React 可以与已知的库或框架很好的配合
4. JSX。JSX是JavaScript语法的扩展。
5. 组件。指一些可以封装起来、重复使用的UI模块,通过React构建组件可以使代码更容易得到复用,在大的项目中使用很好。
6. 单向相应的数据流。可以减少重复代码,比传统数据绑定更简单
React 学习笔记:1-react 入门的更多相关文章
- React学习笔记一:入门知识概览
一:安装react 1:直接下载react源码包,把需要用到的js文件引入自己的页面即可. 2:BootCDN 的 React CDN 库: 在页面代码中导入即可: <head> < ...
- 【React学习笔记】React生命周期梳理(16.X前后两种)
React生命周期 「16版本以前的:」 生命周期流程图 组件从生成到被挂在到页面上的一系列过程 根据流程图打印的执行顺序图: 流程讲解: 初始化流程 start 开始创建组件 在这个周期中做的事情 ...
- react学习笔记1--基础知识
什么是react A JAVASCRIPT LIBRARY FOR BUILDING USER INTERFACES[React是一个用于构建用户界面的JavaScript库.] React之所以快, ...
- React学习笔记(一)- 入门笔记
React入门指南 作者:狐狸家的鱼 本文链接:React学习笔记 GitHub:sueRimn 1.组件内部状态state的修改 修改组件的每个状态,组件的render()方法都会再次运行.这样就可 ...
- React学习笔记--程序调试
React学习笔记 二 程序调试 前面我们搭建好了React的基本开发环境,可以编写基本的React js程序了.但完成的开发环境肯定包含调试器,怎么调试用React编写的JS程序呢?有浏览器,比 ...
- React学习笔记(七)条件渲染
React学习笔记(七) 六.条件渲染 使用if或条件运算符来创建表示当前状态的元素. 可以使用变量来存储元素.比如: let button = null; if (isLoggedIn) { but ...
- React学习笔记(六)事件处理
React学习笔记(六) 五.事件处理 React事件绑定属性的命名采用驼峰写法,不同于传统DOM全部小写. 如果采用JSX的语法,事件函数需要用大括号{}包裹函数名,不同于传统DOM字符串小括号的方 ...
- React学习笔记(五)State&声明周期
React学习笔记(五) 四.State&声明周期 可以为组件添加"状态(state)".状态与属性相似,但是状态是私有的,完全受控于当前组件. 局部状态就是只能用于类(定 ...
- React学习笔记 - 组件&Props
React Learn Note 4 React学习笔记(四) 标签(空格分隔): React JavaScript 三.组件&Props 组件可以将UI切分成一些独立的.可复用的部件,这样你 ...
随机推荐
- PAT_A1138#Postorder Traversal
Source: PAT A1138 Postorder Traversal (25 分) Description: Suppose that all the keys in a binary tree ...
- python 从给定的URL中提取顶级域名(TLD)
安装 PyPI的最新稳定版本: pip install tld 或者GitHub的最新稳定版本: pip install https://github.com/barseghyanartur/tld/ ...
- 29.es路由原理
主要知识点 1.document路由到shard的理解及原理 2.路由算法:shard = hash(routing) % number_of_primary_shards 3.routing值(_i ...
- K大数查询
3110: [Zjoi2013]K大数查询 Time Limit: 20 Sec Memory Limit: 512 MB Description 有N个位置,M个操作.操作有两种,每次操作如果是1 ...
- Automatic Tuning of Memory Management
4.2.2 Automatic Tuning of Memory Management Two memory management initialization parameters, MEMORY_ ...
- ExtJs之gridPanel的属性表格,编辑表格,表格分页,分组等技巧
这里藏的配置确实多.. 慢慢实践吧. <!DOCTYPE html> <html> <head> <title>ExtJs</title> ...
- Spring MVC-表单(Form)标签-复选框(Checkbox)示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_checkbox.htm 说明:示例基于Spring MVC 4.1.6. 以下示 ...
- 生成字符Banner
生成字符Banner http://patorjk.com/software/taag __ _______/ |_ ____ ____ ____ / ___/\ __\/ _ \ / \ / _ \ ...
- Github 基本使用
github GitHub是一个通过Git进行版本控制的软件源代码托管服务,由GitHub公司(曾称Logical Awesome)的开发者Chris Wanstrath.PJ Hyett和Tom P ...
- 0x53 区间DP
石子合并 搞笑 #include<cstdio> #include<iostream> #include<cstring> #include<cstdlib& ...