【问题标题】:What is difference between React vs React Fiber? [closed]React 与 React Fiber 有什么区别? [关闭]
【发布时间】:2018-01-02 15:07:45
【问题描述】:

我刚刚听说 react-fiber 已经准备好了。 react和react-fiber之间的最大区别是什么? 为这些差异学习全新的概念是否值得?

【问题讨论】:

标签: reactjs react-fiber


【解决方案1】:

React Fiber 是对 React 核心算法的持续重新实现,它只是一个对 React 的完全内部重写

React Fiber 是对 React 核心的完整、向后兼容的重写。

React Fiber 的目标是提高其在动画、布局和手势等领域的适用性。它的主要功能是增量渲染:能够将渲染工作分成块并将其分散到多个帧上。

React Fiber 是一个虚拟堆栈框架,React Fiber 是专门用于 React 组件的堆栈框架的重新实现。每个纤程可以被认为是一个虚拟堆栈帧,其中来自帧的信息保存在堆的内存中,并且由于信息保存在堆中,因此您可以控制和使用数据结构并根据需要处理相关信息。

您可以在this video 中找到 Lin Clark 的精彩解释。

更多详情请查看以下链接,

1.What is React Fiber ?

2.React Fiber Architecture

3.What Does React 16 Mean for You?

希望对你有帮助!!

【讨论】:

    【解决方案2】:

    React Fiber 是对 React 核心算法的不断重新实现。 React 和 React Fiber 的主要区别在于这些新特性:-

    1. 增量渲染:- React v16.0 包含一个完全重写的服务器渲染器。真的很快。它支持流式传输,因此您可以更快地开始向客户端发送字节

    2. 处理渲染 API 中的错误: 为了使类组件成为错误边界,我们定义了一个名为 componentDidCatch(error, info) 的新生命周期方法。

    3. 从渲染返回多个元素: 有了 React v16.0 中的这个新特性,我们现在还可以从组件的 render 方法返回一个元素数组和字符串。

    4. 门户: 门户提供了一种一流的方式来将子级渲染到存在于父组件的 DOM 层次结构之外的 DOM 节点中。

    5. 片段: React 中的一个常见模式是组件返回多个元素。片段让您可以对子列表进行分组,而无需向 DOM 添加额外的节点。

    【讨论】:

      【解决方案3】:

      React 16 测试版已于数小时前发布:https://github.com/facebook/react/issues/10294

      重写后的 React 核心(内部称为“纤维”)应该与现有应用保持兼容,除了一些重大更改(请参阅 Github 上的发行说明)。由于大多数更改都在后台,因此您无需再次学习全新的概念。

      【讨论】:

        【解决方案4】:

        这里的每个人都已经在这里提到了 React Fiber 即将推出的所有新功能。我将重点介绍 React Fiber 为改进自身所做的核心变化。 React Fiber 实际上将允许暂停和播放浏览器执行的不同任务。它将优先于某些任务。

        例如,如果特定动画很重要,而不是在后台获取数据。它将动画任务作为优先级推送到执行堆栈中,一旦动画完成或耗时过长可以切换到数据获取任务。为了允许这些现代浏览器开放了一个 API,即 requestIdleCallback,它允许暂停和播放任务。 requestIdleCallback

        React Fiber 使用的是什么。这就是反应纤维在引擎盖中使用的东西,这太神奇了。

        注意:我在某些方面可能并不完全正确。如果有任何更正,我愿意接受任何更正

        【讨论】:

          猜你喜欢
          • 2018-12-31
          • 1970-01-01
          • 2019-07-02
          • 2019-10-03
          • 1970-01-01
          • 2021-11-02
          • 2016-04-11
          • 2020-12-29
          相关资源
          最近更新 更多