美文网首页React Native
RN与IOS互相传值,通信

RN与IOS互相传值,通信

作者: 幽玄727 | 来源:发表于2019-06-28 16:33 被阅读0次

    原生模块是JS中也可以使用的Objective-C类。一般来说这样的每一个模块的实例都是在每一次通过JS bridge通信时创建的。他们可以导出任意的函数和常量给React Native。

    (1.)rn向原生iOS传值(事先要写好的方法),并可以回调(变相的原生iOS向rn传值)

    必须要继承协议

    RCTBridgeModule 

    RN中

    (2.)对于RN调iOS原生,一目了然,上面第一种就是,至于iOS调RN:显然我们可以通过RN主动调原生继而通过Callback或者Promise回调从而拿到原生传过来的数据;然而这样只是原生被动向RN传数据,很多时候我们需要原生代码主动向RN发送消息,这种场景其实很常见,比如集成第三方的服务,通过代理回调获取结果发送给RN。。。具体来说比如我项目里,接入了第三方IM,我需要在RN的代码里监听IM账号被其它设备踢出登录,第三方SDK已经提供了账号被踢出的监听回调。

    所以这边用到了通知 RCTEventEmitter

    继承RCTEventEmitter实现RCTBridgeModule协议

    .m文件中需要实现下面三个代理方法 

    在合适的时机发送消息给RN 

    RN中

    相关文章

      网友评论

        本文标题:RN与IOS互相传值,通信

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