免费开源的iOS开发学习平台

React Native介绍:3-适用场景

RN目前在项目实践中已知的坑有哪些?假如新开发一个项目,完全使用RN是否可行?另外想了解一下您在项目中使用的程度和场景,谢谢!

不太建议完全使用RN,因为Facebook也在不断填坑,每个月都有新版本,一个长期项目经不起频繁换依赖库的版本;我们公司也只是作为业余研究性质,不过RN的热更新思路真心不错,可以随时更换功能模块。需要注意的是,热更新和在线更新是不一样的,分别对应的是 hot-reloading 和 reload,调试时是通过 hot 选项控制;鉴于 hot-reloading 需要和服务器实时保持一个socket长连接和既有的不确定性,我不相信会有公司会采用 hot-reloading 的方案,应用于生产环境。如果真的应用hot-reloading了,那就分享下心得呗。

目前使用React-Native有那些局限,React-Native更适合开发那些应用?

React-Native还是有些坑需要踩的,现在Github上也能看到Recat-Native源码库都有不少开发者在提bug,更新的也很快。目前React-Native做一些内部APP还是可以的;目前对动画的支持不是很高,这个可以在一些APP中做一些优雅降级;更适合开发那些动画效果要求不是忒高、组件功能要求相对较少(如果团队中有OC的开发者可以忽略)的APP。很多坑,我们团队现在都在踩。

请问React-Native的目前推广和应用局限性有哪些?

React-Native技术的推广可以从公司内部APP试水;边踩坑边开发,React-Native的局限性除了平台因素,就是对开发者要求较高。当然开发效率来说,应该是很快的。如果团队中有Objective-C成员,相对而言,上手就会轻松很多。

现在互联网公司开发一个新的移动APP,是不是建议使用React-Native

不一定,React-Native是可以减少一些开发成本,但是目前React-Native Android还有很多不完善的地方,目前比较适合做偏UI方面相对简单的一些需求和功能 。