ReactNative踩坑集成指南
React Native集成iOS文档
1集成过程
1.1搭建RN开发环境
1.1.1使用Homebrew来安装 Node 和 Watchman以及cocopods
1.1.2创建package.json文件(用于安装node_modules库)(备注:最好指定RN的版本且不要为最新版,不然有坑,依赖库pod不下来,本项目是RN0.56版)
1.1.3使用cocopods给原生项目导入基本依赖库,以下的必须导(备注:有些库0.57版本换了名字,这个要按最新的来,不然报错。比如,之前叫Bridge现在叫CxxBridge,之前RCTImage在Core里面,现在不在了,要单独导,不然引用不到原生项目的图片)
1.1.4 创建入口文件index.js(备注:0.56版本前分为index.andriod.js和index.ios.js文件,现整合为index.js一个文件)
1.1.5使用RN进行冰箱页面开发(React.js)
关键词 render()函数
this.setState状态机
this.state全局变量
this.props不可变的属性(传值)
1.1.6页面的封装与跳转
0.56版本前:
0.56版本后(备注,文档显示只需要import引用,类似iOS,但实际亲测还是需要倒出默认类)
1.1.7iOS加载RN页面(先要启动node服务器)
给RN传值initialProperties:字典
URL:本地node服务器地址
打包上线后,自动打包到mianBundle文件
1.1.8RN页面向VC传值(delegate方法)
(貌似此函数类无法引用到外部变量)
3总结
优点: 1上手比较快,拥有一定前端经验的人可以较为快速的上手。
2 拥有跨平台快速开发的特点(安卓,ios一套代码)
3 RN的特性导致其支持代码热更新(苹果现阶段禁止热更新,主要安 卓可以采用)
4对项目轻量化有较大好处。
缺点:1 版本迭代太快,导致查询的到的资料和文档不准确
2现在使用的人比以前的要少,可供查阅的资料较少,可使用的现成框架也较少,大部分需要自行开发。
3 RN库集成本身存在一些bug(和同行交流,倾向于套壳开发,不建议与原生进行太多交互,使用React-native命令直接创建的工程有更好的稳定性,参考GD项目,进行集成问题较多)
最后: 初次学习并实战RN开发,遇到了较多的坑,此文档中如有不对之处还请多多指正,以后还请大家一起学习交流指导。