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

React学习计划-React16--React基础(三)收集表单数据、高阶函数柯里化、类的复习

1. 收集表单数据

包含表单的组件分类

  1. 受控组件——页面中所有输入类的DOM,随着输入,把值存维护在状态里,需要用的时候去状态里取值(推荐,避免了过渡使用ref
  2. 非受控组件——页面中所有输入类的DOM,现用现取
    受控组件示例:
    在这里插入图片描述
    非受控组件示例:
    在这里插入图片描述

2. 高阶函数

  1. 高阶函数:如果一个函数符合下面2个规范中的任何一个,那该函数就是高阶函数
    1. 若A函数,接收的参数是一个函数,那么A就可以称之为高阶函数
    2. 若A函数,调用的返回值依然是一个函数,那么A就可以称之为高阶函数
  2. 函数的柯里化:通过函数调用继续返回函数的方式,实现多次接收参数最后同意处理的函数编码形式

示例:
在这里插入图片描述
分析:我们在这个示例中可以看到onChange绑定事件是一个函数()=>this.handleChange('username', e),标签中呢不仅有事件,事件还绑定函数,函数的返回值也是个函数。

  1. 标签在渲染的时候呢,会执行onChange方法,这时候呢,执行了函数,返回了我们在类中定义的handleChangehandleChange方法还接收了两个参数,一个是我们想要修改的state的属性,另一个是标签的event对象,当我们在input标签里输入内容是,就会触发handleChange方法,
  2. 这种写法呢就属于标签内绑定函数,类中再定义函数。虽然能实现我们的功能,但是我们通常呢,会习惯性的只在标签内绑定一个类中定义的方法就可以了。不会在标签内绑定函数,而在类中呢再次定义函数,所以我们可以使用高阶函数来修改一下上述案例,就如下:

高阶函数——函数柯里化示例:
在这里插入图片描述

3. 类的复习

  1. 类中的构造器不是必须写的,要对实例进行一些初始化操作,如添加属性才写
  2. 如果A继承了B类,且A类中写了构造器,那么A类构造器中必须要调用super()
  3. 类中定义的方法,都是放在了类的原型对象上,供实例去使用

在这里插入图片描述

http://www.lryc.cn/news/264885.html

相关文章:

  • 研究生课程 |《数值分析》复习
  • 55 回溯算法解黄金矿工问题
  • [笔记]ByteBuffer垃圾回收
  • c++ opencv中unsigned char *、Mat、Qimage互相转换
  • 法线贴图实现衣服上皱褶特效
  • 2017年第六届数学建模国际赛小美赛B题电子邮件中的笔迹分析解题全过程文档及程序
  • CentOS安装Python解释,CentOS设置python虚拟环境,linux设置python虚拟环境
  • 在线智能防雷监控(检测)系统应用方案
  • flutter + firebase 云消息通知教程 (android-安卓、ios-苹果)
  • 2024年PMP考试新考纲-PMBOK第七版-项目管理原则真题解析
  • vscode开发python环境配置
  • 数据库客户案例:每个物种都需要一个数据库!
  • 数据分析思维导图
  • 网络基础【网线的制作、OSI七层模型、集线器、交换机介绍、路由器的配置】
  • C++中的继承(二)
  • sklearn多项式回归和线性回归
  • Postman报:400 Bad Request
  • apache poi_5.2.5 实现表格内某一段单元格的复制
  • Oracle重建索引详解
  • 众和策略证券开户首选:股票增持是好还是坏?大股东增持规定?
  • UE4移动端最小包优化实践
  • 用户管理第2节课--idea 2023.2 后端--实现基本数据库操作(操作user表) -- 自动生成
  • java开发面试:常见业务场景之单点登录SSO(JWT)、权限认证、上传数据的安全性的控制、项目中遇到的问题、日志采集(ELK)、快速定位系统的瓶颈
  • Java网络编程原理与实践--从Socket到BIO再到NIO
  • ARM GIC(三) gicv2架构
  • 第4章Netty第二节入门案例+channel,future,promise介绍
  • 【论文笔记】3D Gaussian Splatting for Real-Time Radiance Field Rendering
  • 【生物信息学】层次聚类过程
  • 变分自动编码器【03/3】:使用 Docker 和 Bash 脚本进行超参数调整
  • KnowLM知识抽取大模型