zoukankan      html  css  js  c++  java
  • React Native 一些事

    ReactJS 是否准备好

    有时候我们常常需要监听 ReactJS 的的加载情况。
    比如说,当获取一条推送,应用还没有起来,通过点击推送启动应用后,而推送中包含一些我们感兴趣的字段需要处理,我们如果直接把这条通知发送给 ReactJS,会有一个问题,就是应用是刚启动的,ReactJS 还没有成功加载,推送直接发送会出现丢失。所以我们可以吧这条推送缓存起来,等待 ReactJS 成功加载后再发送。此时可以监听如下事件,获悉 ReactJS 的加载状况。

    RCTJavaScriptWillStartLoadingNotification
    RCTJavaScriptDidLoadNotification
    RCTJavaScriptDidFailToLoadNotification
    

    第三方应用唤起自己应用

    应用被URL唤起,
    自己的应用A,被其他应用B唤醒,
    如果你需要在A应用处理应用B传递的过来的参数,需要处理openurl, 参数通过 url 传递过来。获取url 的方法如下

    - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
      sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
    {
      return [RCTLinkingManager application:application openURL:url
                          sourceApplication:sourceApplication annotation:annotation];
    }
    
    componentDidMount() {
      Linking.addEventListener('url', this._handleOpenURL);
    },
    componentWillUnmount() {
      Linking.removeEventListener('url', this._handleOpenURL);
    },
    _handleOpenURL(event) {
      console.log(event.url);
    }
    

    获取 ReactJS 运行环境

    RCTJavaScriptContextCreatedNotification 是一个有意思的通知,React native 是通过 JSContext 来实现 JS 调用 OC 的方法。JSContext 在成功创建后 会发送 RCTJavaScriptContextCreatedNotification 这个通知,并且携带 JSContext 参数。OC 可以直接获得 ReactJS 的运行环境。


    作者:HuminiOS - 极光
    原文:React Native 一些事
    知乎专栏:极光日报

  • 相关阅读:
    6410实现网卡(DM9000A)收发功能及ARP协议实现
    Shuffling Machine和双向链表
    Have Fun with Numbers及循环链表(约瑟夫问题)
    Tiny6410 LCD设置
    RAM与内存
    inet_addr解析
    map容器find用法
    WinSock编程(TCP)
    Python 时间序列作图及注释
    无法打开之前cuda的vs项目,打开之后变灰色
  • 原文地址:https://www.cnblogs.com/jpush88/p/6742468.html
Copyright © 2011-2022 走看看