美文网首页
RN与JS交互之-事件机制

RN与JS交互之-事件机制

作者: lzh_coder | 来源:发表于2017-11-11 14:31 被阅读94次

本文的应用场景是,原生在获取一些能力之后,需要将结果发送给JS端,由JS端做进一步的处理。

Native端:

1,创建模块

#import <React/RCTBridgeModule.h>

#import <React/RCTEventEmitter.h>

@interface  XXX : RCTEventEmitter < RCTBridgeModule >

@end

2,导出。

RCT_EXPORT_MODULE();

RCT_EXPORT_MEHTOD();

3, 发消息:

[self  sendEventWithName:@"XXXXX"body:@{@"XX1": ''xx1'',

@"XX2": ''xx2''

@"XX3": ''xx3''}];

JS端

1,创建一个Native消息的接受器。

import{ NativeEventEmitter, NativeModules } from 'react-native';

const nativeEventSubscriber =newNativeEventEmitter( NativeModules.XXX );

2,订阅消息。--componentDidMount

const subscription =  nativeEventSubscriber.addListener(

eventName,

(info) => {

//js deal native message body.

);

3,取消订阅。--componentWillUnmount

subscription.remove();

性能优化:

如果native端发出的消息,JS端没有订阅处理,那么对性能来说,这个开销是不必要的。react-native提供了一个模块被订阅和解除订阅的时机。

原生模块根据消息是否被订阅,来决定要不要发出消息事件。

相关文章

  • RN与JS交互之-事件机制

    本文的应用场景是,原生在获取一些能力之后,需要将结果发送给JS端,由JS端做进一步的处理。 Native端: 1,...

  • OC与JS交互

    OC与JS交互前言 OC与JS交互之UIWebView OC与JS交互之WebViewJavascriptBrid...

  • RN 组定义组件

    RN 组定义组件 背景 自定义RN native Component,js绑定事件与native通信 CheckB...

  • UIWebView之JS与OC交互(三)

    前言 基于UIWebView的JS与OC交互(一)之JSExport基于UIWebView的JS与OC交互(二)之...

  • UIWebView之JS与OC交互(二)

    前言 基于UIWebView的JS与OC交互(一)之JSExport基于UIWebView的JS与OC交互(二)之...

  • WKWebView之JS与OC交互

    前言 基于UIWebView的JS与OC交互(一)之JSExport基于UIWebView的JS与OC交互(二)之...

  • 20、jQuery 事件机制

    20、jQuery 事件机制 原生js事件与jQuery事件: (1)用原生的js给div注册事件 原生js注册相...

  • rn应用中的卡顿

    Native与JavaScript交互原理图 卡顿的场景 rn应用界面的渲染是js驱动native完成的。js代码...

  • iOS react native和原生交互摘录

    Native 交互到 RN :iOS原生模块向ReactNative发送事件消息使用通知进行传值 RN 交互到 N...

  • 事件

    JS和HTML的交互是通过事件来实现的。JS采用异步事件驱动编程模型,当文档,浏览器,元素或者与之相关的对象发生特...

网友评论

      本文标题:RN与JS交互之-事件机制

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