【DAY-01】React

React

  • 一个用于创建可复用,可聚合的web组件的js库
  • 只提供MVC中的V层

WHY

  1. 组件化,不是写一堆HTML模板
  2. JS逻辑与HTML标签紧密相连且容易理解
  3. 单项数据流   数据一旦更新,则直接重新渲染整个APP 管理UI状态并不简单
  • 修改DOM树
  • 修改数据
  • 接收用户输入
  • 异步API数据请求

  和传统的服务器端渲染相似

传统方式

React的渲染方式

浏览器请求页面

用户输入

服务器请求数据库

从API获取数据

将数据传给模板

将数据传给顶层组件

模板渲染页面

React将每个组件渲染出来

  将不再有如下缺点:

  1. 双向数据绑定
  2. 数据模型的肮脏检查dirtychecking
  3. 确切的DOM操作

  好处:

  1. 每个组件是干啥的,很直观
  2. 结果可以预测
  3. 组件间的关系更清晰

  一个react组件可以理解为一个独立的函数

  1. 接受参数props
  2. 可复用
  3. 可以传递
  4. 返回结果(渲染组件)

4.虚拟DOM树

在每一次更新时,

  • React重建DOM树
  • 找到与上个版本的DOM的差异
  • 计算出最新的DOM更新操作
  • 从操作队列中批量的执行DOM更新操作

可以在Node.js中运行【服务器端】

  • 服务器与客户端公用逻辑Isomorphic javascript
  • SEO友好,便于生成缓存的单页应用
  • 直接渲染特定的页面而不用渲染整个App

JSX

Javascript的XML的语法扩展

采用易于理解的语法来定义DOM树

 

转载于:https://www.cnblogs.com/codepen2010/p/6832194.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值