美文网首页
React.js采坑系列(一)

React.js采坑系列(一)

作者: LU7IN | 来源:发表于2017-10-01 16:00 被阅读0次

事件监听

在React.js中监听并不是一件很难的事情,我们只需在监听事件的元素加上属性on click等等这样的属性就可以了。

图片.png
我们只需要在h1标签上加上onClick事件,然后onClick后面是一个表达式的插入,这个表达式返回组件Hello的一个方法。在这里只要用户每点击一次标题,控制台就会输出你点击了一下我! 图片.png

在 React.js 不需要手动调用浏览器原生的 addEventListener 进行事件监听。React.js 帮我们封装好了一系列的 on* 的属性,当你需要为某个元素监听某个事件的时候,只需要简单地给它加上 on* 就可以了。而且你不需要考虑不同浏览器兼容性的问题,React.js 都帮我们封装好这些细节了。

但是需要注意的是这些事件属性名都必须要用驼峰命名法。

event对象

与普通浏览器一样,事件监听函数会自动传入一个event对象,这个对象和普通浏览器的event对象所包含的方法和属性基本一致。但是React.js中的event对象并不是浏览器所提供的,而是它内部所构建的。

我们来看一下,当用户点击h1的时候,h1inHTML也就是这是一个标题!就会在控制台打印出来。

图片.png 图片.png

关于事件中的this

一般在某个类的实例方法里面的this指的是这个实例本身。但是在下面的这个例子中直接把this给打印出来,你看到会是null或者是undefined。

图片.png 图片.png

这是因为 React.js 调用你所传给它的方法的时候,并不是通过对象方法的方式调用(this.handleOnClick),而是直接通过函数调用 (handleOnClick),所以事件监听函数内并不能通过 this 获取到实例。

如果你想在事件函数当中使用当前的实例,你需要手动地将实例方法 bind 到当前实例上再传入给 React.js。

图片.png 图片.png

相关文章

  • React.js采坑系列(一)

    事件监听 在React.js中监听并不是一件很难的事情,我们只需在监听事件的元素加上属性on click等等这样的...

  • Universal Link 前端部署采坑记

    Universal Link 前端部署采坑记 Universal Link 前端部署采坑记

  • rasa对话系统踩坑记(三)

    在rasa对话系统踩坑记(二)中我自定义过两个component组件。也好久没更新采坑系列了,随着项目的进展迭代最...

  • 【SpringBoot DB系列】Jooq批量写入采坑记录

    【SpringBoot DB系列】Jooq批量写入采坑记录 前面介绍了jooq的三种批量插入方式,结果最近发现这里...

  • WebView采坑(一)

    使用webview,你可长点心为什么要写这篇文章,其实对于webview,说简单也简单,说困难也困难。简单在于如果...

  • nginx采坑记

    采坑系列2-nginx 最近因为工作,需要配置nginx,初期nginx都运行的非常的顺利,在终端输入命令 ngi...

  • Flutter携程APP总结

    功能展示 首页实现 搜索页面实现 旅拍页面 DAO 采坑 启动屏 自定义Widget 打包 功能展示 DAO 采坑...

  • 有的坑要早踩

    有的坑要早踩好处才大,因为年轻还可以有多次采坑的时间,总结经验知道为什么采坑,踩到了什么坑,而在我们年轻时,父母总...

  • 2019-08-01 疑难杂症之- hive踩坑

    很多时候,你以为你懂了,其实你并没有。采坑指南就是将踩过的坑记住。 1、hive 表新增字段时,采坑 2、hive...

  • laravel queue & horizon 采坑日记

    采坑前景 问题来了 文档 文档地址

网友评论

      本文标题:React.js采坑系列(一)

      本文链接:https://www.haomeiwen.com/subject/dvcaextx.html