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

React概念理解

1 useEffect

文章推荐

  1. https://segmentfault.com/a/1190000018639033
  2. https://juejin.cn/post/7044161793471545381

  useEffect(() => {console.log('====111111======');return () => {console.log('=======222222=======');};});在每次代码刷新时候都会打印111111和222222
const [state, dispatch] = useReducer((oldState, payload) => {if (payload.type === 'tick') {return {...oldState,count: oldState.count + oldState.step,};}return {...oldState,};},{ count: 0, step: 1, type: '' },);useEffect(() => {console.log('========111111======');const id = setInterval(() => {console.log('========222222======', state.count);dispatch({ type: 'tick' }); }, 1000);return () => {console.log('========333333======', state.count);clearInterval(id);};}, [dispatch]);<h1>{state.count}</h1>console.log('========111111======'); 只会执行一次,****说明每次返回的dispatch都是同一个函数。console.log('========222222======', state.count);会被多次执行,但是打印出来的state.count会一直是0 (因为Capture Value的原因)console.log('========333333======', state.count); 不会执行,页面其他state更新它也不受影响
页面其他state更新不会影响到上面useEffect内部执行。h1标签里面的值会正常一秒增加一次。可以把上面理解成一个小型的Redux。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 使用yolov5实现目标检测简单案例(测试图片)
  • MySQL- 覆盖索引
  • STM32初识
  • 3.类和对象(中)
  • 《Techporters架构搭建》-Day06 国际化
  • 怎样在 SQL 中对一个包含销售数据的表按照销售额进行降序排序?
  • Ubuntu安装Anaconda3
  • Bug定义及生命周期(七)
  • Java中Maven打包方式pom、jar、war的区别
  • 对象切片(Object Slicing)
  • Data Harmonizer(数据协调器)------线程
  • 拥有一个公网固定IP,既然如此简单、HTTP 虚拟专线:为您开启专属网络访问新时代
  • 【STM32 FreeRTOS】事件标志组
  • C语言-使用数组法,指针法实现将一个5X5的矩阵中最大的元素放在中心,四个角分别放四个最小的元素(顺序为从左到右,从上到下,从小到大存放),写一函数实现之。
  • Java垃圾收集器工作原理
  • JS中 map, filter, some, every, forEach, for in, for of 用法总结
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • CAP 一致性协议及应用解析
  • Hibernate最全面试题
  • Just for fun——迅速写完快速排序
  • Laravel 菜鸟晋级之路
  • Linux学习笔记6-使用fdisk进行磁盘管理
  • Lucene解析 - 基本概念
  • Objective-C 中关联引用的概念
  • Phpstorm怎样批量删除空行?
  • PHP面试之三:MySQL数据库
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • VUE es6技巧写法(持续更新中~~~)
  • vuex 笔记整理
  • 浮现式设计
  • 高性能JavaScript阅读简记(三)
  • 面试题:给你个id,去拿到name,多叉树遍历
  • 前端设计模式
  • 因为阿里,他们成了“杭漂”
  • Java性能优化之JVM GC(垃圾回收机制)
  • MyCAT水平分库
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • ​什么是bug?bug的源头在哪里?
  • # 数仓建模:如何构建主题宽表模型?
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯
  • ###C语言程序设计-----C语言学习(6)#
  • #调用传感器数据_Flink使用函数之监控传感器温度上升提醒
  • #控制台大学课堂点名问题_课堂随机点名
  • #在 README.md 中生成项目目录结构
  • $.ajax()参数及用法
  • (3)nginx 配置(nginx.conf)
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (TOJ2804)Even? Odd?
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (二)fiber的基本认识
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (转)Mysql的优化设置
  • (转载)跟我一起学习VIM - The Life Changing Editor