ReactNative 进阶(九):API 学习之注册组件 AppRegistry
一、前言
在前期博文《ReactNative进阶(三):ReactNative 项目启动原理介绍》讲解了 RN 启动过程及原理,今天主要讲解下 RN 项目启动运行接口AppRegistry
。
二、AppRegistry 简介
每一个应用程序的运行都需要有一个入口文件或者入口函数,而在React Native
中,AppRegistry
是RN
应用的入口函数。
AppRegistry
负责注册运行React Native
应用程序的JaveScript
入口,程序入口组件使用AppRegistry.registerComponent
来注册。当注册完应用程序组件后,Native
系统(OC)就会加载jsbundle
文件并触发AppRegistry.runApplication
运行应用。AppRegistry
接口有以下方法:
registerConfig(config:Array)
: 静态方法,注册配置;
registerComponent(appKey:string,getComponentFunc: ComponentProvider)
: 注册入口组件;
registerRunnable(appKey:string , func :Function)
: 注册函数监听;
getAppKeys()
: 获取registerRunnable
注册的监听键;
runApplication(appKey:string,appParameter:any)
: 运行 App;
首先解释下AppRegistry
是JS
运行所有React Native
应用的入口, 那么什么是入口?
1.在我们初始化一个react native
项目的时候,默认的index.ios.js/index.android.js
文件内容是如下:
注:
StyleSheet
:ReactNative
中使用的样式表,类似css
样式表;StyleSheet.create
创建样式实例,在应用中只会被创建一次,不用每次在渲染周期中重新创建;
上述代码中,系统自动创建了一个组件叫做 Allen, 然后这个组件会被AppRegistry
这个API
的注册函数显示出来。
带引号的这个“Allen”代表的是这个 APP 的名称, 后面的 Allen 代表的是所要显示的组件名称, 那么我们就可以再创建一个 xxx.js 文件 (在react-native
中一个文件也是一个组件), 然后我们就可以将这个组件注册到这里来, 则可以显示这个 js 所呈现的内容。
注意:注册的组件只是注册一次,与组件名称无关,和文件组件名称有关!
三、拓展阅读
版权声明: 本文为 InfoQ 作者【No Silver Bullet】的原创文章。
原文链接:【http://xie.infoq.cn/article/be6227c41f1f1c576450ebfdf】。文章转载请联系作者。
评论