事例1:

只在rn里面发送和接受消息。

A界面:

import  {DeviceEventEmitter} from 'react-native';
//... componentDidMount(){
this.subscription = DeviceEventEmitter.addListener('xxxName’, Function);
}; componentWillUnmount(){
this.subscription.remove();
};

B界面:

import  {DeviceEventEmitter} from 'react-native';
//…
//调用事件通知
DeviceEventEmitter.emit('xxxName’,param);

事例2:

要在ReactNative项目中实现通知事件监听,主要在Native中实现一个转发机制。

如图,在ios程序中注册一个方法,让react来调用。

这个注册的方法就是一个桥梁,通知发送这个消息,在react中可以注册一个监听者,监听接收这个方法。

如图,

react调用注册方法,相当于发送消息。

最后,在需要监听事件的地方,增加事件监听者。

记住,视图移除后,要注销监听事件。

当然,如果不想分别在ios和android中写注册方法,也可以使用下面介绍的setNativeProps的方法。

事例3:

首先,在需要根据DOM来更新视图的对象中实现setNativeProps方法,如图

然后在change方法中获取DOM节点,调用setNativeProps方法。

这样,就能够指定更新视图了。

是不是很简单。^_^

另外,系统组件一般都已经实现了setNativeProps方法,所以,使用setNativeProps的一般都是自定义的组件。

ReactNative实现通知监听事件的更多相关文章

  1. iOS 原生模块 给 Javascript(ReactNative) 发送事件 (通知监听)

    官方中文文档是这样描述的:   就给我们这几句话 就打发我们了. 按照上面的写法,根本不知道  - (void)calendarEventReminderReceived:(NSNotificatio ...

  2. 横向滑动的listview和其中用到的触摸监听事件详解

    一.首先把横向的listview的代码放上来 HorizontalListView: package com.common.cklibrary.utils.myview; import java.ut ...

  3. spring扩展点之三:Spring 的监听事件 ApplicationListener 和 ApplicationEvent 用法,在spring启动后做些事情

    <spring扩展点之三:Spring 的监听事件 ApplicationListener 和 ApplicationEvent 用法,在spring启动后做些事情> <服务网关zu ...

  4. 关于AngularJs中监听事件及脏循环的理解

    可能很多刚入行或者刚学习的前端对于AngularJs中的一些事件或者概念感觉不理解或者没有思路,今天让我们一起来剖析一下AngularJs中的一些事件. AngularJs中对于的监听事件会用到一个s ...

  5. Redis集群环境下的键值空间监听事件实现方案

    一直想记录工作中遇到的问题和解决的方法,奈何没有找到一方乐土,最近经常反思,是否需要记录平时的点滴,后台还是决定下定决心记录一些,以便以后用到的时候找不着,实现这样的一个功能主要也是业务所需要的. 需 ...

  6. Android中Button的五种监听事件

    简单聊一下Android中Button的五种监听事件: 1.在布局文件中为button添加onClick属性,Activity实现其方法2.匿名内部类作为事件监听器类3.内部类作为监听器4.Activ ...

  7. Second Day: 关于Button监听事件的三种方法(匿名类、外部类、继承接口)

    第一种:通过匿名类实现对Button事件的监听 首先在XML文件中拖入一个Button按钮,并设好ID,其次在主文件.java中进行控件初始化(Private声明),随后通过SetOnClickLis ...

  8. js 获取当前焦点所在的元素、给元素和input控件添加键盘监听事件、添加页面级的键盘监听事件

    页面级的键盘监听事件 document.onkeydown = function (event) { var e = event || window.event || arguments.callee ...

  9. android listview 的监听事件

    今天遇到了一个比较让我头疼的问题,不过追根揭底只是我对listview理解的不够透彻罢了, 闲言少叙,说说我遇到的问题吧: 上篇随笔我写了关于listview的使用,如果你也已经写好了列表那么恭喜这一 ...

随机推荐

  1. poj 1860 (Bellman_Ford判断正环)

    题意:给出n种货币,m中交换关系,给出两种货币汇率和手续费,求能不能通过货币间的兑换使财富增加. 用Bellman_Ford 求出是否有正环,如果有的话就可以无限水松弛,财富可以无限增加. #incl ...

  2. Coursera-Neural Networks by Geoffrey Hinton

    feed-forward networks symmetrically-connection neural networks

  3. Eclipse:使用findBugs预先检测错误

    FindBugs是用于Java的另一种静态分析工具,它在某些方面与Checkstyle和PMD类似,但是侧重点不同.FindBugs不关心格式或编码标准,对最佳实践也不太感兴趣:事实上,它专注于检查潜 ...

  4. grep -v grep 代表在查询的最终结果中去掉grep命令本身

    grep -v grep 代表在查询的最终结果中去掉grep命令本身

  5. vue+webpack一些知识

    使用mac的用户需要获取权限才可以使用npm install指令 设置node目录的权限指令 sudo chmod -R 777 /usr/local/lib/node_modules/ 大家都知道国 ...

  6. CSS权威指南学习笔记 —— HTML元素分类

    HTML文档由各种元素组成.比如,p.table.span等等.每个元素都会对文档的表现有所影响.CSS中,每个元素都会生成一个框(传说中的盒子),其中包含元素内容. 元素可以根据它的创建方式分为两种 ...

  7. AngularJS学习资源

    图灵社区 : 图书 : AngularJS入门教程 http://www.ituring.com.cn/book/1206 AngularJS 教程 | 菜鸟教程 http://www.runoob. ...

  8. hadoop 学习

    不同版本间Hadoop拷贝 通过NFS,将hdfs挂在到本地

  9. $(function() {});和$(document).ready(function() {});区别

    第一个是直接使用Jquery调用function,第二个是在文档加载完毕后才去调用function

  10. 关于FND_PROFILE与FND_GLOBLE[Z]

    fnd_global package可以取得一些關於當前login in用戶的信息 fnd_concurrent_requests functions   select FND_PROFILE.VAL ...