当前位置: 首页 > Web前端 > HTML

前端开发React框架入门

时间:2023-03-28 18:25:26 HTML

安装Reactnpmi-Sreactreact-domreact:react是React库的入口react-dom:提供DOM的方法,比如将创建的虚拟DOM渲染到该页面什么是ReactReact框架发展的中心思想是封装组件,以组件为核心而不是MVC。原因是Facebook的任务。当时(2013年之前)的前端框架都有前端培训,这并不是前端工程师真正想要的。因此,React框架:1.用于构建UI的JavaScript库2.React不是MVC框架,它只工作在View层。还记得jQuery时代,你先通过DOM找到元素,然后再改变UI。React的基本工作方式与此类似。不对的是传统原生Dom操作的性能问题通过虚拟Dom得到了改善,同时数据绑定解决了【selectors】不知疲倦地寻找某个DOM元素的尴尬。React框架一般包括以下几个概念:1.Components2.JSX3.VirtualDOM4.数据流HelloReact让我们通过一个经典的例子来看看React是如何工作的:importReact,{Component}from'react';import{render}from'react-dom';classHelloReactextendsComponent{render(){return

Hello{this.props.name}
;}}//加载组件到DOM元素中mountNorderender(,mountNode);代码分析:React应用程序构建在组件之上。上面的HelloReact是React构建的一个组件。render的最后一句会在页面的一个元素mountNode中显示这个组件,显示的内容是
HelloRick
。props作为组件的配置属性,在组件内部是不变的,只是在调用这个组件的时候传入不同的属性(比如这里的name)来自定义这个组件的显示。2.JSX来自上面的代码mountNorderender(,mountNode);你可以看到HTML直接嵌入到JS代码中。这是React提出的一种叫做JSX的语法。请注意不带引号的是一段文字。核心VirtualDOMDom的工作方式见JQ,但元素DOM操作效率丰富低下,不适合高端动态的现代前端编程。所以React实现了一个VirtualDOM,组件DOM结构映射到这个VirtualDOM上。React在这个虚拟DOM上实现了一个diff算法。当重新渲染一个组件时,它会通过diff找到要改变的DOM节点。然后将其更新为浏览器实际DOM节点上的UI控件,因此它不会实际呈现整个DOM树。这个VirtualDOM是一个纯JS数据结构,所以性能会比nativeDOM快很多。VituralDOM的处理方法:1.用JavaScript对象结构来表示DOM树的结构,然后用这棵树构建一个真正的DOM树,当状态发生变化时插入到Document中,重建一个新的对象树.然后将新树与旧树进行对比,记录两棵树的差异,将2中记录的差异应用到步骤1构建的真实DOM树上,UI视图就会更新