与React类组件相比,React函数式组件究竟有何不同?

区别:心智模型不同函数式组件捕获了渲染所用的值。

函数式组件与类组件有何不同? — Overreacted他们是完全不同的宝可梦哦。https://overreacted.io/zh-hans/how-are-function-components-different-from-classes/

它渲染了一个利用setTimeout来模拟网络请求,然后显示一个确认警告的按钮。例如,如果props.userDan,它会在三秒后显示Followed Dan。非常简单。

实验:

  1. 点击 其中某一个 Follow 按钮。
  2. 在3秒内 切换 选中的账号。
  3. 查看 弹出的文本。

你将看到一个奇特的区别:

  • 当使用 函数式组件 实现的 ProfilePage, 当前账号是 Dan 时点击 Follow 按钮,然后立马切换当前账号到 Sophie,弹出的文本将依旧是 'Followed Dan'
  • 当使用 类组件 实现的 ProfilePage, 弹出的文本将是 'Followed Sophie'

在这个例子中,第一个行为是正确的。如果我关注一个人,然后导航到了另一个人的账号,我的组件不应该混淆我关注了谁。 在这里,类组件的实现很明显是错误的。

函数式组件与类组件区别-心智模型相关推荐

  1. React函数组件和类组件的区别

    定义组件有两个要求: 组件名称必须以大写字母开头 组件的返回值只能有一个根元素 函数组件 函数组件接收一个单一的 props 对象并返回了一个React元素 类组件 class Welcome ext ...

  2. onclick=两个函数_[译]React函数组件和类组件的差异

    [译]React函数组件和类组件的差异 原文: https://overreacted.io/how-are-function-components-different-from-classes/ 在 ...

  3. Reac学习记录(一) - 函数式组件与类组件

    函数式组件 直接以函数的方式声明,并且返回的组件内容(JSX语法)] 以下代码拷贝可直接运行: <body><div id="app"></div&g ...

  4. react之纯函数、函数组件、类组件、纯组件

    一.纯函数 Pure Function 定义:一个函数的返回结果只依赖于它的参数,并且在执行的过程中没有副作用,我们就把该函数称作纯函数. - 特点: 1.函数的返回结果只依赖与它的参数(同一个输入只 ...

  5. React组件——类组件

    一.组件的概念 使用组件的方式进行编程,可以提高开发效率,提高组件的复用性.提高代码的可维护性和可扩展性 React定义组件的方式有两种 类组件:React16.8版本之前几乎React使用的都是类组 ...

  6. React类组件里面的各种问题浅析

    浅析React类组件 React类组件(组件名首字母大写) //创建类组件 组件名首字母大写 class MyCom extends React.Component {render(){return ...

  7. 【问题探讨】H5 UI渲染心智模型

    目标 探讨H5 UI渲染心智模型,即阐述数据是依据什么样的逻辑渲染到界面上的. 本文思路 先通过一个示例讲述不同的数据渲染逻辑,然后讲两个延伸DEMO来着重说明CLASS和FUNCTION的特点: 示 ...

  8. Reac组件化以及组件通信

    一.模块与组件以及模块化与组件化慨念 模块:向外提供特定功能的JS文件,便于复用JS,简化JS,提升JS效率数据.对数据的操作(函数).将想暴露的私有的函数向外暴露(暴露的数据类型是对象) 2. 模块 ...

  9. 【React】hooks的心智模型是什么鬼?

    前言 最近无意中看见一个分享贴,里面有人说了hooks的心智模型不被很多人知道.我就好奇hooks有心智模型?心智模型到底是啥玩意?专门去翻了下. Hooks心智模型起源 根据我百度到的,中文里出现这 ...

最新文章

  1. 简单粗暴的“Debug模式”
  2. Kotlin学习 PART 3:类,对象和接口
  3. Unity学习笔记4 更换编辑器为VS2013及VS的背景图片设置
  4. php替换短信常量的值,常量替换 · AAPHP开发手册 · 看云
  5. 征战蓝桥 —— 2014年第五届 —— C/C++A组第5题——锦标赛
  6. 复习Collection_迭代器使用细节_泛型_综合案例
  7. 简单谈谈haskell
  8. asp.net配置IIS过程错误解决
  9. RESTful架构与RPC架构
  10. 做一个iframe的弹出框
  11. 医学相关excel表格计算机作业,求计算机作业电子表格演示文稿。
  12. pymysql:Mysql拒绝从远程访问的解决办法
  13. 计算机专业相关的组名和口号,课堂小组霸气组名和口号大全
  14. 前端使用高德地图url实现地图定位
  15. python3的各种经典案例,总共299个案例,直接可以运行(中:100个案例)
  16. 试编程判断输入的正整数是否既是5又是7的整数倍,若是输出“yes”,否则输出“no”。
  17. IT男需要学习文哲史
  18. 数据通信网络基础,华为VRP系统(HCLA-Datacom v1.0华为认证数通笔记2)
  19. P5:用统一的NLP框架建模推荐系统问题
  20. This probably means that Tcl wasn't installed properly.

热门文章

  1. 通过操作swap文件来扩大或缩小swap空间
  2. Lucky Division
  3. OCR 在用户需要的地方出现
  4. NBIS单细胞教程:质控(一)
  5. 基于android的手机微博客户端app
  6. android应用开发大赛,喜讯:我院首届“Android应用开发大赛”圆满落幕
  7. mysql perror_Linux运维知识之MySQL下perror工具查看System Error Code信息
  8. python+sikuli 图形操作脚本编写
  9. Python的glob模块
  10. EasyExcel复杂表头的生成方法