当前位置: 首页 > 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. 类中定义的方法,都是放在了类的原型对象上,供实例去使用

在这里插入图片描述

相关文章:

  • 透视数据:数据可视化工具的多重场景应用
  • 【华为OD题库-106】全排列-java
  • Hadoop 集群环境搭建
  • Pooling方法总结(语音识别)
  • Farad capacitor法拉电容为什么又称Super capacitor超级电容?
  • 2024最新软件测试面试题(带答案)
  • 【数据结构之顺序表】
  • 掌握Jenknis基础概念
  • 【华为机试】2023年真题B卷(python)-乘坐保密电梯
  • 持续集成交付CICD:HELM 自动化完成前端项目应用发布与回滚
  • HBase基础知识(二):HBase集群部署、HBaseShell操作
  • Linux的/proc/self/学习
  • Starting the Docker Engine...一直转圈
  • 中国人民大学金融加拿大女王大学硕士项目——你愿意花一年时间完成蜕变吗
  • SAP系统标准表之间的关联关系对应
  • ----------
  • 【知识碎片】第三方登录弹窗效果
  • 30天自制操作系统-2
  • cookie和session
  • FineReport中如何实现自动滚屏效果
  • Go 语言编译器的 //go: 详解
  • Markdown 语法简单说明
  • Mithril.js 入门介绍
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • Python连接Oracle
  • Quartz初级教程
  • Selenium实战教程系列(二)---元素定位
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • 一起参Ember.js讨论、问答社区。
  • 译自由幺半群
  • 主流的CSS水平和垂直居中技术大全
  • NLPIR智能语义技术让大数据挖掘更简单
  • 东超科技获得千万级Pre-A轮融资,投资方为中科创星 ...
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 如何用纯 CSS 创作一个货车 loader
  • # Panda3d 碰撞检测系统介绍
  • #在线报价接单​再坚持一下 明天是真的周六.出现货 实单来谈
  • ( 10 )MySQL中的外键
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (C#)Windows Shell 外壳编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令...
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (博弈 sg入门)kiki's game -- hdu -- 2147
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (强烈推荐)移动端音视频从零到上手(下)
  • (十)DDRC架构组成、效率Efficiency及功能实现
  • (正则)提取页面里的img标签
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • .net core 客户端缓存、服务器端响应缓存、服务器内存缓存
  • .NET Core日志内容详解,详解不同日志级别的区别和有关日志记录的实用工具和第三方库详解与示例
  • .NET Framework 4.6.2改进了WPF和安全性
  • .Net接口调试与案例
  • @private @protected @public
  • @SuppressWarnings(unchecked)代码的作用
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(朱雀组)