React Native 踩坑(一)监听

标签:listener react native android ios


1.问题描述:在A页面设置监听,页面流程为 A=>B=>C=>B,从C=>B时,A页面的监听被触发

解决方案:A,B设置不同名监听。
原因:A,B设置了同名监听。由于项目中有较多同名监听,一直没有异常,故而没有发现。结合只有A,B被触发,应该是只有在栈内的监听一直保持工作中。以后要注意。
问题代码:

我的监听

    this.listener = emitter.addListener(
       'A',
      (reminder) => {
      setTimeout(() => this._onRefresh(), 500)
     })
 

其他页面监听

    this.listener = emitter.addListener(
       'A',
      (reminder) => {
      setTimeout(() => this._onRefresh(), 500)
     })
解决方法代码:
    this.listener = emitter.addListener(
       'A',
      (reminder) => {
      setTimeout(() => this._onRefresh(), 500)
     })

其他页面监听

    this.listener = emitter.addListener(
       'B',
      (reminder) => {
      setTimeout(() => this._onRefresh(), 500)
     })
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,559评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,993评论 19 139
  • 持续更新中...... 一套企业级的 UI 设计语言和 React 实现。 https://mobile.ant....
    日不落000阅读 5,846评论 0 35
  • 为什么别人写爸爸文章的题目是父亲,而我的却是爸爸呢?因为呀,父亲于我,像良师、像益友、更像无微不至的恋人。 爸爸...
    柠檬绿茶小西瓜阅读 1,631评论 2 4
  • 下载简书很久很久了,反反复复在这里写了很多东西,自己不满意也就没整理成文,最终删去,这里还是一片空白,不知道该写...
    老艾先生阅读 358评论 0 1