愚墨的博客
  • 首页
  • 前端技术
  • 面试
只争朝夕不负韶华
  1. 首页
  2. 前端框架
  3. React
  4. 正文

React初探

2016年09月20日 2650点热度 0人点赞 0条评论

冒死总结一下React!开始作吧!

React是什么?

React 是 Facebook 推出的一个用来构建用户界面的 JavaScript 库。具备以下特性:

  • 不是一个 MVC 框架
  • 不使用模板
  • 响应式更新非常简单
  • HTML5 仅仅是个开始
  • 组件
  • JSX
  • Virtual DOM
  • Data Flow

React的核心思想就是:组件封装。

每个组件有自己的state和UI,当状态改变时,自动渲染整个组件。

这种方式可以让我们不再操作DOM元素去改变UI。

写一个最简单的例子:

import React from 'react';
export default class Video extends React.Component{
    render(){
        return(
            <h1>this is Video</h1>
        )
    }
}
let root  = doucment.getElementById('root');
render(<Video/>,root)

组件

React应用都用由组件搭建起来的。所以说组件是react 中的重头。

组件包括两个核心部分:props和state。

props:可以看作是组件的属性

state:可以看作是组件的状态

JSX

这种写法其实就是将js和html写到一起,刚开始的时候可能会让很多人不爽,因为他违背了“表现和逻辑层分离”的思想;但是前端要想真正的做到组件化,封装html是必须的,所以能在js处理逻辑的时候将html封装进去,React的jsx还是很不错的,如果你写了一段时间之后,我觉得你会喜欢这种写法的。

Virtual DOM

虚拟DOM ,React横空出世的时候一面大旗就是Virtual DOM,你我都知道在web中操作DOM是一件非常消耗新能的一件事,如果大面积的操作DOM,画面就会和用2g流量来看大片一样!

所以React就推出了Virtual DOM,组件的结构会映射到这个虚拟DOM上面,React在Virtual DOM上面实现了一个叫diff算法,当一个组件需要重新渲染的时候,diff算法会找到需要刷新的DOM节点,在虚拟DOM中修改之后再更新到浏览器的时间DOM上去,所以我们操作的不是整个DOM树。这个Virtual DOM 是一个JS数据结构,所以性能会比原声DOM高很多。

Data Flow

和angular不同的是React采取的是”单向数据绑定“。

标签: 暂无
最后更新:2016年09月27日

愚墨

保持饥渴的专注,追求最佳的品质

点赞
下一篇 >

文章评论

取消回复

搜搜看看
历史遗迹
  • 2023年5月
  • 2022年9月
  • 2022年3月
  • 2022年2月
  • 2021年12月
  • 2021年8月
  • 2021年7月
  • 2021年5月
  • 2021年4月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年9月
  • 2020年7月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年1月
  • 2019年5月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年9月
  • 2018年3月
  • 2018年2月
  • 2018年1月
  • 2017年11月
  • 2017年7月
  • 2017年6月
  • 2017年3月
  • 2017年2月
  • 2017年1月
  • 2016年12月
  • 2016年11月
  • 2016年9月
  • 2016年8月
  • 2016年7月
  • 2016年6月
  • 2016年5月
  • 2016年4月
  • 2016年3月
  • 2016年2月
  • 2016年1月
  • 2015年12月
  • 2015年10月
  • 2015年9月
  • 2015年7月
  • 2015年6月
  • 2015年4月

COPYRIGHT © 2020 愚墨的博客. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS