当前位置: 首页 > news >正文

React中的hook

React中的hook究竟是什么?

有哪些hook?

hook的两大规则

为什么hook要在顶层调用?

hook的调用需要在每一次render后都按照一样的顺序进行调用,否则会出现类似“野指针”的情况,但是要做到这一步,就需要hook在顶层调用。 

UseEffect hook

react组件生命周期 

 比如说,某些操作就只在初始渲染后执行,我们就可以使用useEffect。

  useEffect(function () {fetch(`http://www.omdbapi.com/?apikey=${KEY}&s=interstellar`).then((res) => res.json()).then((data) => setMovies(data.Search));}, []);

react中的副作用 (side effect)

 副作用是指react组件与该组件外部世界之间的任何交互,比如说从某些api获取数据,比如直接操作DOM。但实际上这些“副作用”有时候是有用而且必要的。

但是react又规定副作用不应该发生在组件渲染期间,所以我们可以创建副作用的地方有两个:

  1. 事件处理函数中;
  2. useEffect hook中;

有了useEffect hook,我们就可以编写不同组件实例不同生命周期需要运行代码了。

 事件处理函数与useEffect对比

注意:我们所谓的要注意组件不同的生命周期,本质上是为了与外部世界保持同步!

useEffect中的依赖数组

useEffect是什么? 

useEffect与生命周期 

注意:useEffect hook与生命周期紧密相关,但不是生命周期的hook!

useEffect究竟什么时候运行?

与上文所说不同,useEffect()不是在“渲染”之后,而是在浏览器绘制之后调用。

 ​​

两个蓝色空洞将在后文继续讲解。 

cleanUp 函数

两个蓝色空洞就是该函数。

 cleanUp函数的使用


http://www.mrgr.cn/news/59004.html

相关文章:

  • HarmonyOS 5.0应用开发——应用打包HAP、HAR、HSP
  • linux网络编程5——Posix API和网络协议栈,使用TCP实现P2P通信
  • 命名空间std, using namespace std
  • Wireshark网络工具详解
  • 【虚幻引擎UE】UE5 音频共振特效制作
  • 01_Linux基础操作CentOS7学习笔记
  • Bat 案例 -- 注册入站端口
  • PD诱骗取电快充协议,一款可额外定制功能的快充协议芯片
  • 119.WEB渗透测试-信息收集-ARL(10)
  • HT7181 16.8V,14A高效升压转换器
  • linux中myshell的实现
  • 长短期记忆网络(LSTM)详解
  • unity游戏开发之塔防游戏
  • 词云图大师支持词云图字体预览,轻松选择字体样式!
  • list 的实现
  • SQL语句的书写顺序与实际执行顺序的差异,以及如何利用执行顺序优化查询性能
  • SpringBoot中EasyExcel使用实践总结
  • 【Java】java 集合框架(详解)
  • 电脑连接海康相机并在PictureBox和HWindowControl中分别显示。
  • 开源数据库 - mysql - 组织结构(与oracle的区别)
  • 系统调用的介绍
  • 每日“亿“题 东方博宜OJ 1538 - 小 X 与煎饼达人(flip)
  • 线程安全介绍
  • 代码随想录算法训练营第55天|最小生成树:prim、kruskal算法
  • 密码管理APP需求分析报告
  • 苍穹外卖总结