bind(this)是把事件绑定到react组件上面。箭头函数默认是执行了bind(this)的function Person() {// 构造函数Person()将`this`定义为自身this.age = 0;setInterval(function growUp() {// 在非严格模式下,growUp()函数将`this`定义为“全局对象”,// 这与Person()定义的`this`不同,// 所以下面的语句不会起到预期的效果。this.age++;}, 1000);
}var p = new Person();修复function Person() {var self = this; // 有的人习惯用`that`而不是`self`,// 无论你选择哪一种方式,请保持前后代码的一致性self.age = 0;setInterval(function growUp() {// 以下语句可以实现预期的功能self.age++;}, 1000);
}另外,创建一个约束函数可以使得 this值被正确传递给 growUp() 函数。
箭头函数捕捉闭包上下文的this值,所以下面的代码工作正常。
function Person(){this.age = 0;setInterval(() => {this.age++; // 这里的`this`正确地指向person对象}, 1000);
}var p = new Person();

react-native this使用笔记相关推荐

  1. React Native开发学习笔记——WebStorm运行项目

    如何在webStorm上进行真机调试?下边以运行Android为例.ios有不同的地方. 调试分两步: debug配置. 运行. debug配置 点击Edit Configurations. 2.点击 ...

  2. React Native开发学习笔记——常用命令

    学习RN开发的过程中,有许多需要命令操作的功能,对涉及到的命令进行总结. 搭建环境阶段    首先需要使用命令行下载安装 Chocolatey.python 2 .node.js.Yarn.详情:Re ...

  3. 什么是 Native、Web App、Hybrid、React Native 和 Weex?

    (点击上方公众号,可快速关注) 来源:zwwill_木羽 segmentfault.com/a/1190000011154120 一句话概要 Native.Web App.Hybrid.React N ...

  4. React Native 动画(Animated)笔记

    学习笔记--方便下次查看 大多数情况下,在 React Native 中创建动画是推荐使用 Animated API 的,其提供了三个主要的方法用于创建动画: 1.API Animated.timin ...

  5. React Native v0.55 学习笔记1

    React Native v0.55 学习笔记1 学习内容来自官网文档0.55版本 RN 是基于 React 的思想,相比于 web 的一些组件,RN 使用的是基于原生( android.ios )的 ...

  6. React Native跨平台开发学习笔记

    App的分类(按开发方式) 大致可以分为这3种: native app(原生app:ios或安卓)原生应用程序 原生应用程序外观和运行起来(性能)是最佳的.可以访问本地资源,开法成本高.发布审核周期长 ...

  7. React Native学习笔记一之搭建开发环境

    因为项目需要,今天开始正式学习React Native,先来搭建个开发环境 忐忑的心情 因为项目比较急,而且客户要求使用React Native开发,只能先学点基础然后在项目中使用的时候,边做边学了, ...

  8. native react ssh_React Native踩坑笔记(持续更新中...)

    最近发现市场上对React Native开发人员的需求挺多的,自己就想学习一下React Native,多一门技术,好将来买个好价位.嘿嘿! 在学习React Native中碰到了不少坑,再次记录下来 ...

  9. react native 开发笔记(二)

    1.按照前文配置好文件之后,便可以生成目录 (1)按照小兄弟的步骤生成项目:react-native init name (2)目录结构 index.ios.js和index.android.js为入 ...

  10. react native 开发笔记(一)

    1.准备工作: (1)安装node.js程序 (2)安装android-studio程序(项目第一次加载需要 androidSDK) (3)java环境的配置(百度) (4)需要一个安卓程序模拟器,我 ...

最新文章

  1. 分分钟甩Word几条街,Python编辑公式竟可以如此简单
  2. java 滚轮页面缩放_急..JAVA 在画布上画拖动滚动条可扩大缩小的长方形
  3. java数组可扩展_[转载]Java数组扩容算法及Java对它的应用
  4. div 设置 hover时边框颜色_CSS 奇思妙想边框动画
  5. linux中挂载系统光盘,在Linux系统下挂载光盘
  6. Codeforces刷题
  7. .gpg 进程 linux,小知识之Linux系统中的最大进程数,最大文件描述,最大线程数...
  8. 30.Qt的内存管理
  9. 以后别写程序了,几个程序员很有用的源码网站奉献给大家
  10. 重磅 | 2017年中国大数据企业生态图谱(一)大数据企业融资地图
  11. Log_Analysis_using_OSSEC.md
  12. 单片机自学入门必看基础知识
  13. 如何学习计算机思维,刘康平:为什么我们每个人都应该学习计算思维?
  14. CUDAnumba | 使用python分别在cpu和gpu全局内存和gpu共享内存进行矩阵乘法运算
  15. Redis-查询附近人
  16. ArcGIS学习总结(三)——空间分析基本操作
  17. Anaconda修改国内镜像源
  18. java.io.IOException: 远程主机强迫关闭了一个现有的连接。
  19. 虚拟化在防泄密领域的缺点
  20. 【转】Mosquitto持久层群推消息实现思路

热门文章

  1. Java-Concurrent 线程池ThreadPoolExecutor使用
  2. oracle 日期 加一秒,Leap Second (闰秒) 在ORACLE环境的影响
  3. OpenShift 4 Hands-on Lab (12) 通过 KubeFed 配置 OpenShift 联邦集群
  4. (三)标记图像以进行AI模型训练
  5. C#中的深度学习:预处理硬币检测数据集
  6. python爬取内容剔除nbsp_python 爬虫爬取内容时, \xa0 、 \u3000 的含义与处理方法...
  7. wireshark linux版本_Wireshark大法-WiFi6无线抓包
  8. 课程体系包括哪些要素_利润的构成要素包括哪些部分
  9. java 命名参数动态替换_使用Kettle的命名参数动态执行作业
  10. php全套之一崭露头角(12天),PHP系列教程之一阶段崭露头角 (JS,bootstrap )