WEBPACK+ES6+REACT入门5/7-在React中为按钮绑定点击事件

  • 步骤
  • 事件绑定机制

步骤

1、在components下新建bindEvent.jsx文件,添加如下代码:

import React from 'react'
import { render } from 'react-dom'
export default class BindEvent extends React.Component{constructor(){super()this.state = {}}render(){return <div>BindEvent组件<hr/><button>按钮</button></div>}
}

2、对应的index.js:

//1、引入react和react-dom。接受的成员名称,必须这么写
import React from 'react' //创建组件、虚拟dom元素、生命周期
import ReactDOM from 'react-dom'//把创建好的组件和虚拟dom放到页面展示
//引入bindevent
import BindEvent from '@/components/bindEvent'
//2、创建虚拟dom元素
//3、使用reactdom把虚拟dom渲染到页面上ReactDOM.render(<div><BindEvent></BindEvent></div>,document.getElementById('app'))

事件绑定机制

在react中有一套自己的事件绑定机制,事件名为驼峰式命名。并包含特定格式:onClick={function},所以代码修改如下:

import React from 'react'
import { render } from 'react-dom'
export default class BindEvent extends React.Component{constructor(){super()this.state = {}}render(){return <div>BindEvent组件<hr/><button onClick={function(){console.log('点击了按钮')}}>按钮</button></div>}
}

3、function匿名函数和此实例方法的引用,效果一致,修改代码如下:


import React from 'react'
import { render } from 'react-dom'
export default class BindEvent extends React.Component{constructor(){super()this.state = {}}render(){return <div>BindEvent组件<hr/>{/* <button onClick={function(){console.log('点击了按钮')}}>按钮</button> */}<button onClick={this.myclickHandler}>按钮</button></div>}//实例方法//function匿名函数和此实例方法的引用,效果一致myclickHandler(){console.log('点击了按钮')}
}

以上方式可能存在问题,不推荐使用,使用最多的事件绑定形式为以下方式。
onClick只接受function作为处理函数,箭头函数本身就是一个匿名的function函数

import React from 'react'
import { render } from 'react-dom'
export default class BindEvent extends React.Component{constructor(){super()this.state = {}}render(){return <div>BindEvent组件<hr/>{/* <button onClick={function(){console.log('点击了按钮')}}>按钮</button> */}{/* <button onClick={this.myclickHandler}>按钮</button> */}<button onClick={()=>{this.myclickHandler()}}>按钮</button></div>}//实例方法myclickHandler = ()=>{console.log('点击了按钮')}
}

上一篇:WEBPACK+ES6+REACT入门(4/7)-评论列表DEMO以及CSS样式
下一篇:WEBPACK+ES6+REACT入门(6/7)-使用this.setState修改state上的数据

END

WEBPACK+ES6+REACT入门(5/7)-在React中为按钮绑定点击事件相关推荐

  1. react中绑定点击事件_在React中绑定事件处理程序的最佳方法

    react中绑定点击事件 by Charlee Li 通过李李 在React中绑定事件处理程序的最佳方法 (The best way to bind event handlers in React) ...

  2. React入门(2)--React的虚拟dom和diff算法

    一.虚拟dom和真实dom的区别 我们在render函数里写的jsx其实就是react.creactElement的语法糖,在插件babel-plugin-transform-react-jsx的作用 ...

  3. React入门(3)-- React的错误边界(Error Boundaries)

    熟悉React都知道,在React中一些UI的错误,比如throw new Error(),加载服务器资源报错时,或者一些js的语法错误可能会导致整个项目崩溃掉,满屏的红色报错,非常不友好.为了解决这 ...

  4. React 组件绑定点击事件,并且传参完整Demo

    微信小程序开发交流qq群   173683895    承接微信小程序开发.扫码加微信. 1.传数组下标给点击事件Demo: const A = 65 // ASCII character codec ...

  5. 【YY笔记】React.入门(尚硅谷React教程笔记)

    前言 教程链接:尚硅谷React技术全家桶全套完整版:天禹老师讲得挺好,感谢免费分享教程 笔记用OneNote记的,不想重写了,但是想保留格式就只能用图片传上来--很烦 可能会有一些疏漏和小白的地方, ...

  6. React入门(4)--react提升项目性能的Api(pureComponent、memo、useMemo、useCallback)

    先看下面的例子 import React, { Component } from 'react';class Child extends Component {render() {console.lo ...

  7. 微信公众平台开发入门--PHP,实现自动回复文本,图文,点击事件

    一页代码实现微信基本回复和点击事件功能,部署上去sae或者bae,妥妥的基本免费的服务器 不懂代码都基本每个人都可以做自己的微信公众号了 <?php define("TOKEN&quo ...

  8. React入门---事件与数据的双向绑定-9

    上一节中,我们是从父组件给子组件传送数据,要实现事件与数据的双向绑定,我们来看如何从子组件向父组件传送数据; 接触之前,我们看一些里面函数绑定的知识: 例:通过点击事件改变state的age属性值: ...

  9. 【Ant Design Pro 四】react 点击事件传参

    简单的绑定点击事件传参: 点击事件 function myClick(){console.log('点击')}return (<Button onClick={myClick}>点击< ...

  10. React实现文件上传过程中取消上传

    项目中经常有上传文件的需求,有时候因为文件太大,用户没耐心继续等,或者发现上传错了,想取消上传的话,该怎么实现呢? 先看下上传文件的实现,原本的实现就是页面上一个选择文件的按钮,点击后选择文件,然后上 ...

最新文章

  1. ZooKeeper典型应用场景一览
  2. Linux调试技术介绍
  3. JS解决在提交form表单时某个值不存在 alter弹窗点确定不刷新界面
  4. 在Jmeter中使用Selenium WebDriver完成测试
  5. Ubuntu 无线密码破解利器aircrack-ng
  6. 前端学习(3112):react-hello-复习相关知识
  7. android 兼容性定义,谷歌释出 Android 7.0 兼容性定义文件,史上最严
  8. 决策树ID3与C4.5
  9. supervivi的一点秘密
  10. 用FolderBrowserDialog选择一个文件路径
  11. DAS NAS SAM FC
  12. 将网页上的MathJax复制到word中
  13. 美团2020校招后台开发
  14. exchange 2013 C盘空间不足清理
  15. 如果一只股票退市,那么里面所持有这只股票人的钱该怎么办?
  16. python用turtle画一个旋转的风车
  17. java ireport生成pdf_jasperreport 生成pdf实现下载与打印
  18. 关于Context的理解(转)
  19. 织梦教程网模板+Wap端
  20. 实现一个地铁线路站点

热门文章

  1. docker 学习之使用dockerfile 创建镜像遇到的坑
  2. MySQL自定义函数用法详解-复合结构自定义变量/流程控制
  3. 【Hoxton.SR1版本】Spring Cloud OpenFeign远程服务调用
  4. css 固定宽度,自动换行
  5. Tomcat设置普通用户启动
  6. Intel BIGDL 探索
  7. 【译】Matplotlib:plotting
  8. 为了拿Ph.D而做出的诺贝尔奖
  9. Linux中创建LVM详细步骤
  10. 思达报表工具Style Report基础教程—通过镜像,子表和联合将逗号分隔的字段内容处理成多行数据...