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

4. React中的事件绑定:基础事件;使用事件对象参数;传递自定义参数;同时传递事件参数和自定义参数

4. React中的事件绑定:基础事件;使用事件对象参数;传递自定义参数;同时传递事件参数和自定义参数

  • React 基础事件绑定
    • 基础事件
    • 使用事件对象参数
    • 传递自定义参数
    • 同时传递事件参数和自定义参数
    • 完整代码和效果

React 基础事件绑定

基础事件

语法on + 事件名称 = {事件处理程序},整体上遵循驼峰命名法。

如点击事件

<button onClick={clickHandler1}>点击事件</button><br/>// 点击事件
const clickHandler1 = () => {console.log('点击事件')
}

使用事件对象参数

语法:在事件回调函数中设置形参e

这里e不是固定的写法,也可以叫别的名字,通常规范一点就叫做e。

<button onClick={clickHandler2}>事件对象参数</button><br/>// 事件对象参数
const clickHandler2 = (e) => {console.log('事件对象参数', e)
}

传递自定义参数

语法:事件绑定的位置改成箭头函数的写法,在执行clickHandler3实际处理业务函数的时候传递实参。
注意:不能直接写函数调用,这里事件绑定需要一个函数引用

<button onClick={() => clickHandler3('张三')}>自定义参数</button>// 自定义参数
const clickHandler3 = (name) => {console.log('自定义参数', name)
}

同时传递事件参数和自定义参数

语法:在事件绑定的位置传递事件实参e和自定义参数,clickHandler4中声明形参,注意顺序对应。

<button onClick={(e) => clickHandler4('张三', e)}>同时传递事件参数和自定义参数</button>// 同时传递事件参数和自定义参数
const clickHandler4 = (name, e) => {console.log('同时传递事件参数和自定义参数', name, e)
}

完整代码和效果

// React中的事件绑定:基础事件;使用事件对象参数;传递自定义参数;同时传递事件参数和自定义参数
function App2() {return (<div className="App">这是 App2.js<br/><button onClick={clickHandler1}>点击事件</button><br/><button onClick={clickHandler2}>事件对象参数</button><br/><button onClick={() => clickHandler3('张三')}>自定义参数</button><br/><button onClick={(e) => clickHandler4('张三', e)}>同时传递事件参数和自定义参数</button><br/></div>);
}// 点击事件
const clickHandler1 = () => {console.log('点击事件')
}// 事件对象参数
const clickHandler2 = (e) => {console.log('事件对象参数', e)
}// 自定义参数
// 使用场景:删除列表项、修改列表项、添加列表项等
const clickHandler3 = (name) => {console.log('自定义参数', name)
}// 同时传递事件参数和自定义参数
const clickHandler4 = (name, e) => {console.log('同时传递事件参数和自定义参数', name, e)
}export default App2;

在这里插入图片描述

http://www.dtcms.com/a/460724.html

相关文章:

  • 解析Oracle 19C中并行INSERT SELECT的工作原理
  • SLAM-Former: Putting SLAM into One Transformer论文阅读
  • Vue3 + TypeScript provide/inject 小白学习笔记
  • 【开题答辩过程】以《基于springboot交通旅游订票系统设计与实现》为例,不会开题答辩的可以进来看看
  • 免费企业网站模板html北京网站制作设计价格
  • 网络编程(十二)epoll的两种模式
  • 某大厂跳动面试:计算机网络相关问题解析与总结
  • 服务器数据恢复—Raid5双硬盘坏,热备盘“罢工”咋恢复?
  • Vue2.0中websocket的使用-demo
  • 海外IP的适用业务范围
  • eBPF 加速时代,【深入理解计算机网络05】数据链路层:组帧,差错控制,流量控制与可靠传输的 10 Gbps 实践
  • simple websocket用法
  • 主流网络协议--助记
  • Python网络编程——UDP编程
  • 个人网站的设计流程seo资源网
  • 绿泡守护者:禁止微信更新
  • 服务端架构演进概述与核心技术概念解析
  • 美颜滤镜SDK:社交产品破局与增长的核心引擎
  • 三维模型数据结构与存储方式解析
  • 可以使用多少列创建索引?
  • 技术分享|重组单克隆抗体制备全流程:从抗体发现到纳米抗体应用,关键步骤与优势解析
  • 缝合怪deque如何综合list和vector实现及仿函数模板如何优化priority_queue实现
  • H5响应式网站示例企业网app下载
  • cmd什么命令可以知道本机到目标机的ip节点
  • C++(day6)
  • MySQL InnoDB存储引擎CheckPoint技术底层实现原理详细介绍
  • HikariCP与Spring Boot集成使用指南
  • java-代码随想录第23天|39. 组合总和、40.组合总和II、131.分割回文串
  • 【LangChain】P18 LangChain 之 Chain 深度解析(三):基于 LCEL 语法的数据库与文档处理新型 Chain
  • 2.0 Labview自定义控件中的队列引用句柄从哪拖来?