React点击事件的两种写法小结
更新时间:2022年12月02日 08:38:45 作者:叉叉酱
这篇文章主要介绍了React点击事件的两种写法小结,具有很好的参考价值,希望对大家有所帮助。
React点击事件写法
1.bind绑定(推荐)
第一个参数指向this,第二个参数开始才是事件函数接收到的参数,事件对象event默认是最后一个参数。
... clicked(param,event){ console.log(param) //hello world console.log(event.target.value) //按钮 } render(){ return ( <React.Fragment> <button value="按钮" onClick={this.clicked.bind(this,"hello world")}>点击</button> </React.Fragment> ) } ...
这里的话绑定this可以统一写,这样代码看起来整洁点。
... constructor(props){ super(props); this.state = {}; this.checkMenu = this.checkMenu.bind(this); } clicked = (param)=>{ return (event)=>{ console.log(event.target.value); // 按钮 console.log(param); // hello } } render(){ return ( <React.Fragment> <button value="按钮" onClick={this.clicked('hello')}>点击</button> </React.Fragment> ) } ...
2.箭头函数
箭头函数若要传事件对象event的话,需要在箭头函数中把event作为参数传递给触发的事件。
... clicked(param,event){ console.log(param) //hello world console.log(event.target.value) //按钮 } render(){ return ( <React.Fragment> <button value="按钮" onClick={(event)=>this.clicked("hello world",event)}>点击</button> </React.Fragment> ) } ...
React点击事件不好用,可能是被其他组件遮挡
入门React不久,练习例子的时候发现点击退出事件不好用。
而逻辑啥的没有问题,在点击事件里写console打印也没反应(就是根本不识别)。
搜索一下,发现可能是按钮所在的组件被底部导航遮挡住了。
给导航的less样式添加“z-index:-1”便可以使用了。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
react-native 封装选择弹出框示例(试用ios&android)
本篇文章主要介绍了react-native 封装选择弹出框示例(试用ios&android),具有一定的参考价值,有兴趣的可以了解一下2017-07-07通过React-Native实现自定义横向滑动进度条的 ScrollView组件
开发一个首页摆放菜单入口的ScrollView可滑动组件,允许自定义横向滑动进度条,且内部渲染的菜单内容支持自定义展示的行数和列数,在内容超出屏幕后,渲染顺序为纵向由上至下依次排列,对React Native横向滑动进度条相关知识感兴趣的朋友一起看看吧2024-02-02
最新评论