React教程
React教程【高级】:深入JSX
实际上,JSX 仅仅只是 React.createElement(component, props, …children) 函数的语法糖。如下 JSX 代码: 会编译为: 如果…
React教程【高级】:性能优化
UI 更新需要昂贵的 DOM 操作,而 React 内部使用几种巧妙的技术以便最小化 DOM 操作次数。对于大部分应用而言,使用 React 时无需专门优化就已拥有高性能的用户界面…
React教程【高级】:Portals
Portal 提供了一种将子节点渲染到存在于父组件以外的 DOM 节点的优秀的方案。 第一个参数(child)是任何可渲染的 React 子元素,例如一个元素,字符串或 fragm…
React教程【高级】:Profiler API
Profiler 测量渲染一个 React 应用多久渲染一次以及渲染一次的“代价”。 它的目的是识别出应用中渲染较慢的部分,或是可以使用类似 memoization 优化…
React教程【高级】:不使用ES6
通常我们会用 JavaScript 的 class 关键字来定义 React 组件: 如果你还未使用过 ES6,你可以使用 create-react-class …
React教程【高级】:不使用 JSX 的 React
React 并不强制要求使用 JSX。当你不想在构建环境中配置有关 JSX 编译时,不在 React 中使用 JSX 会更加方便。 每个 JSX 元素只是调用 React…
React教程【高级】:协调
React 提供的声明式 API 让开发者可以在对 React 的底层实现没有具体了解的情况下编写应用。在开发者编写应用时虽然保持相对简单的心智,但开发者无法了解内部的实现机制。本…
React教程【高级】:Refs & DOM
Refs 提供了一种方式,允许我们访问 DOM 节点或在 render 方法中创建的 React 元素。 在典型的 React 数据流中,props 是父组件与子组件交互的唯一方式…
React教程【高级】:Render Props
术语 “render prop” 是指一种在 React 组件之间使用一个值为函数的 prop 共享代码的简单技术 具有 render prop 的组件接受一个…
React教程【高级】:静态类型检查
像 Flow 和 TypeScript 等这些静态类型检查器,可以在运行前识别某些类型的问题。他们还可以通过增加自动补全等功能来改善开发者的…
React教程【高级】:严格模式
StrictMode 是一个用来突出显示应用程序中潜在问题的工具。与 Fragment 一样,StrictMode 不会渲染任何可见的 UI…
React教程【高级】:使用 PropTypes 进行类型检查
随着你的应用程序不断增长,你可以通过类型检查捕获大量错误。对于某些应用程序来说,你可以使用 Flow 或 TypeScript 等 Java…
React教程【高级】:非受控组件
在大多数情况下,我们推荐使用 受控组件 来处理表单数据。在一个受控组件中,表单数据是由 React 组件来管理的。另一种替代方案是使用非受控组件,这时表单数据将交由 DOM 节点来…
React教程【高级】:Web Components
React 和 Web Components 为了解决不同的问题而生。Web Components 为可复用组件提供了强大的封装,而 React 则提供了声明式…
React教程:React API
React 是 React 库的入口。如果你通过使用 <script> 标签的方式来加载 React,则可以通过 React&n…
React教程:React.Component
本章节提供了 React class 组件的详细 API 参考。本章节默认你已熟悉基本的 React 概念,例如 组件 & Props,以及 State…
React教程:ReactDOM
如果你使用一个 <script> 标签引入 React,所有的顶层 API 都能在全局 ReactDOM 上调用。如果你使用 n…
React教程:ReactDOMServer
ReactDOMServer 对象允许你将组件渲染成静态标记。通常,它被使用在 Node 服务端上: 概览 下述方法可以被使用在服务端和浏览器环境。 renderToSt…
React教程:DOM 元素
React 实现了一套独立于浏览器的 DOM 系统,兼顾了性能和跨浏览器的兼容性。我们借此机会完善了浏览器 DOM 实现的一些特殊情况。 在 React 中,所有的 DOM 特性和…
React教程:合成事件
SyntheticEvent 实例将被传递给你的事件处理函数,它是浏览器的原生事件的跨浏览器包装器。除兼容所有浏览器外,它还拥有和浏览器原生事件相同的接口,包括 …