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传递参数的几种方式

    React传递参数的几种方式

    本文详细的介绍了React传递参数的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-06-06
  • React如何避免重渲染

    React如何避免重渲染

    这篇文章主要介绍了React如何避免重渲染,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • React Native自定义控件底部抽屉菜单的示例

    React Native自定义控件底部抽屉菜单的示例

    本篇文章主要介绍了React Native自定义控件底部抽屉菜单的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • React中事件的类型定义方式

    React中事件的类型定义方式

    这篇文章主要介绍了React中事件的类型定义方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 解决jest处理es模块示例详解

    解决jest处理es模块示例详解

    这篇文章主要为大家介绍了解决jest处理es模块示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • React Suspense解决竞态条件详解

    React Suspense解决竞态条件详解

    这篇文章主要为大家介绍了React Suspense解决竞态条件详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • react实现原生下拉刷新

    react实现原生下拉刷新

    这篇文章主要为大家详细介绍了react实现原生下拉刷新,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • React DnD如何处理拖拽详解

    React DnD如何处理拖拽详解

    这篇文章主要为大家介绍了React DnD如何处理拖拽示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • React createElement方法使用原理分析介绍

    React createElement方法使用原理分析介绍

    这篇文章主要为大家介绍了React的createElement方法源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • 在 React 中如何从状态数组中删除一个元素

    在 React 中如何从状态数组中删除一个元素

    这篇文章主要介绍了在 React 中从状态数组中删除一个元素,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03

最新评论