个人对于React Hooks的理解

前端人

共 1189字,需浏览 3分钟

 · 2021-04-02


关注公众号 前端人,回复“加群

添加无广告优质学习群

React组件可以分为 类组件函数组件类组件具有生命周期、状态,而函数组件却没有。

在React 16.8 新出来的Hooks 可以让React函数组件具有状态,并且提供了类似componentDidMountcomponentDidUpdate 等生命周期方法。

栗子🌰:

我们写一个函数组件,如果想要更新它的状态,在 React 16.8版本之前,就得重写成 类组件。

在 React 16.8 出来的Hooks 之后,这就变得简单多了。
使用新的 useState hook 向普通函数组件添加状态。

const [clicked,useClicked] = useState(false);

// 分离出来写法
const arr = useState(false);
const clicked = arr[0];
const useClicked = arr[1]; 

Hooks 在16.8版本之后可以使用,它能让我们在不使用class就能使用state和其它的react的特性。
比如:之前我们想要用state必须先写一行:

class App extends React.Component{} 

这样才能用state和setState,但是现在有了hooks,就不需要了。我们可以在普通函数组件里面使用hooks实现之前class里的state、生命周期等。

为什么要使用hooks呢?

因为setState。生命周期之类的函数其实是定义给组件的一些钩子函数,它们被耦合在了class里面,所以我们定义有状态组件和有生命周期的组件必须定义class。而hooks的出现,把这些功能性的钩子和class分离开了。

hooks包含 state hook 、effect hook、context hook等基础的hooks,还有一些自定义hooks和一些其他的钩子,可以再官方文档里面查看。

原文:https://blog.csdn.net/qq_39721418/article/details/104131413

最后

关注公众号,置顶公众号,鬼哥,一起前端进阶

  1. 公众号里回复关键词资料包领取我整理的进阶资料包
  2. 公众号里回复关键词加群,加入前端进阶群
  3. 喜欢的话文章点个在看,支持一下把!

点击关注我们↓

浏览 5
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报