React 组件和 React 组件实例有什么区别?

2023-12-19

我在读this https://www.reactenlightenment.com/react-semantics.html#它说:

当一个组件纯粹是 props 的结果,没有状态时, 组件可以编写为纯函数,从而无需 创建一个反应组件实例.

组件和组件实例有什么区别?

它们是一样的吗?

EDIT:

  • 有什么区别Component and Component Instance ?

  • 他们之间的关系如何?

  • 从概念上讲?

  • 它们在计算机内存中如何表示?表示有何不同?

  • 什么是组件以及该组件的实例是什么? (在记忆中。)什么样的 JS 对象?

  • 实例是什么意思?面向对象的意义?

  • 每个组件都可以有(一个或多个)实例吗?

  • 一个组件可以有多少个实例?

  • 说可以为每个 React 组件创建一个实例是否有意义?

  • React 组件实例是如何创建的以及组件是如何创建的?

询问原因:

我正在尝试创建一个 React 概念图来阐明术语以及它们之间的关系。

这是一个草稿:


基本的区别是,当它Component,React 将运行/添加其所有生命周期方法 https://facebook.github.io/react/docs/react-component.html#the-component-lifecycle。当您拥有以下内容时,这会很有用state在你的组件中。当你使用这个组件时,React 会创建一个React Component Instance它将添加所有生命周期方法和其他挂钩。

class App extends React.Component{
  ...
}

在某些情况下,您不会使用state。在这些情况下,添加所有这些生命周期方法是不必要的。因此,React 为您提供了一种创建组件的方法,该组件将具有render独自的。它被称为PureComponent。当您使用它时,无需创建新的Component Instance因为这里没有生命周期方法。它只是一个可以接受的函数props并返回 React 元素。

class App extends React.PureComponent{
   ...
}

希望这可以帮助!

[Update]

什么是Component and a Component Instance?

从技术上讲,一个Component在 React 中是一个class or a function.

Example:

class App extends React.Component{
...
}

//stateless component
const App = (props) => {
...
}

当你使用它时component,它将被实例化,更像是new App()。但是,React 本身以不同的方式做到这一点。

例如:

render(){
   return <App/> //Instance of the component App
}

需要实例,因为每个实例都可以单独执行。实例是原始类的副本。

简单的答案是,components将是一个Class and component Instance将是该类的副本/实例并将用于render

希望这能解释!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React 组件和 React 组件实例有什么区别? 的相关文章

随机推荐