javascript - 为什么我们在React中创建类组件时要扩展React.Component?

标签 javascript reactjs react-native es6-class

我是React的新手,我很困惑,日日夜夜不断地思考它,几乎我所有的头发都掉下来了,而且还在掉下来,这就是为什么我们使用类创建组件时,始终扩展 React.Component 类。

但是在功能组件和其他方法中,我们不会做任何这样的事情来将创建的组件推送到React.Component 类。所以主要问题是 React.Component 类是什么,为什么我们总是使用 extends 作为子级向其添加新组件 以及为什么我们不能在类组件中使用 extends 或不扩展 React.Component 来在 React Native 中创建组件> 类。那么,React.Component 类在幕后 React 内部发生了什么,场景是什么?

我将非常非常感谢能够通过示例和简单方法回答我的问题的人。

最佳答案

React 组件只是简单的函数。

例如,只要不使用 JSX,您就可以在不导入 react 的情况下渲染功能性 react 组件。

如果您想使用 JSX 并在 js 文件中编写 HTML,那么您需要导入 react

如果您想编写一个利用生命周期方法的组件,您需要扩展默认的Component类。 Component 类包含生命周期方法,不应与其他通用 react 组件混淆,例如功能组件或您可能编写的任何组件。这个Component指的是react维护的特定类实现。

扩展 Component 将使您能够访问 componentDidMountcomponentDidUpdatecomponentWillUnmountrender 等函数.

关于javascript - 为什么我们在React中创建类组件时要扩展React.Component?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52585851/

相关文章:

javascript - 输入检查更改按钮类

javascript - 使用 React.js 渲染 JSON

reactjs - 当 ngrok 尝试连接到 React 开发服务器时,主机 header 无效

javascript - Webpack:如何使用 webpack-dev-server 编译、写入磁盘和提供静态内容(js/css)

javascript - 无法获取函数内变量的值

javascript - Zendesk `app.js` 使用完整 URL 调用外部 API?

javascript - “Uncaught TypeError: undefined is not a function” AngularJS-BreezeJS

javascript - 如何将 Intl.NumberFormat 与 native react 一起使用?

android - 如何在 intellij 上为 react native 项目设置 JS 代码完成?

javascript - React-native 自动完成问题 ("Objects are not valid as a Reach child")