React,用于构建用户界面的 JavaScript 库,只提供了 UI 层面的解决方案
遵循组件设计模式、声明式编程范式和函数式编程概念,以使前端应用程序更高效
使用虚拟DOM
来有效地操作DOM
,遵循从高阶组件到低阶组件的单向数据流
帮助我们将界面成了各个独立的小块,每一个块就是组件,这些组件之间可以组合、嵌套,构成整体页面
react
类组件使用一个名为 render()
的方法或者函数组件return
,接收输入的数据并返回需要展示的内容
class HelloMessage extends React.Component {
render() {
return (
<div>
Hello {this.props.name}
</div>
);
}
}
ReactDOM.render(
<HelloMessage name="Taylor" />,
document.getElementById('hello-example')
);
上述这种类似 XML
形式就是 JSX
,最终会被babel
编译为合法的JS
语句调用
被传入的数据可在组件中通过 this.props
在 render()
访问。
React 是一个由 Facebook 开发的用于构建用户界面的 JavaScript 库。它主要专注于构建可复用的组件,并且通过使用 Virtual DOM 技术来实现高效的页面更新。下面是我对 React 的理解以及它的一些特性:
理解:
-
组件化思想:React 鼓励将用户界面拆分为独立的、可复用的组件,每个组件都有自己的状态和生命周期方法,这样可以使代码更加模块化和可维护。
-
声明式设计:通过使用 JSX 语法,React 提供了一种声明式的方式来描述用户界面的状态随时间如何变化,而不需要手动操作 DOM。
-
Virtual DOM:React 使用 Virtual DOM 来提高页面更新的性能。Virtual DOM 是一个虚拟的 DOM 树,React 使用它来记录页面状态的变化,然后计算出最小化的 DOM 更新,并将更新应用到实际的 DOM 上,从而减少了 DOM 操作的次数,提高了性能。
-
单向数据流:React 使用单向数据流来管理组件之间的数据传递。数据流是从父组件传递到子组件,子组件不能直接修改父组件传递的数据,而是通过 props 和回调函数的方式来进行数据的传递和更新。
-
生命周期方法:React 组件具有一系列的生命周期方法,包括组件挂载、更新和卸载等阶段。这些生命周期方法提供了在组件不同阶段执行代码的机会,从而可以进行一些初始化、清理和优化的操作。
特性:
-
JSX:一种 JavaScript 的语法扩展,可以在 JavaScript 中直接编写类似于 HTML 的代码,使得编写组件更加直观和灵活。
-
组件化:将用户界面拆分为独立的组件,每个组件都有自己的状态和行为,可以方便地进行复用和组合。
-
状态管理:通过组件的状态和 props 来管理组件的数据和行为,使得组件之间的数据传递更加清晰和可控。
-
虚拟DOM:使用 Virtual DOM 技术来提高页面更新的性能,减少不必要的 DOM 操作。
-
生命周期管理:提供了一系列的生命周期方法来管理组件的状态和行为,从而可以在不同阶段执行相应的操作。
-
组件生命周期:包括挂载、更新和卸载等不同阶段,可以在这些阶段执行相应的操作,如初始化状态、数据请求、清理资源等。
-
事件处理:提供了一种统一的事件处理机制,通过将事件处理函数绑定到组件上来处理用户交互。
总的来说,React 是一个强大而灵活的库,它提供了一种简洁的方式来构建用户界面,并且通过其特有的特性和机制来提高开发效率和页面性能。