React-native项目入门与思考

引子

有个前端同窗说,等我学好了react-native,大家也就快失业了。楼主这当心脏一惊,真的假的,决定开始学习一下react-native。其实以前一直作事native的开发,没有怎么接触过前端,对于React更是比较陌生,虽然从2015年开始它火的一塌糊涂。
这里记录一下本身接触react-native过程当中遇到的坑和做为一个native的思考。javascript

环境搭建

React-native for android 都出来快一年的时间了,环境搭建这块有不少的文章,这里仍是推荐官网的。React-Native 中文网的也不错环境搭建
这里主要说一下本身遇到的坑:html

  1. 编译运行问题
    Android端:
    安装好环境后,直接运行react-native run-android, 该命令实际是直接使用了android目录下的gradlew命令,运行后这里报错了,主要是一些依赖包的问题。这里使用Android studio导入工程目录下的android,而后运行安装,ok 了。
    Ios端
    因为以前没有ios端的经验,遇到的问题都是小白问题。这里须要注意的就是xcode要在7以上,而后注意修改AppDelegate.m中的server地址:
    jsCodeLocation = [NSURL URLWithString:@"http://电脑ip:8081/index.ios.bundle?platform=ios&dev=true"];复制代码
  2. Android手机上选项菜单不出现问题
    本文中使用的测试机是小米5,刚安装成功后,正常摇一摇手机能够出调试菜单的,然而并无出来,这里须要设置该应用的悬浮窗权限,设置后可使用。

入门基础

  1. React基础
    固然首先是要有js基础,学语言我的经验是先找网上的入门教程也有一个大概的了解,这里推荐廖雪峰的blog,而后就是边实践边学习,有了必定基础后再去看大部头的经典教材,通常就会讲的比较详细,主要是知识更系统,原理也会了解很多,读完后会有一个很大的提高。
    react基础我看了阮一峰老师的博客,React入门实例教程.前端

  2. React-Native基础
    这里主要是跟着官网的教程练习就能够了,须要注意不能版本之间的一些区别。同时也要注意es5和es6的一些区别,es5和es6的区别这个文章介绍的比较好。java


项目练习

  1. react-native-android-guide
    这里收集了不少入门的资料,可是有几个月没有更新了。体验了一下文中提到的知乎日报Android版,总体来讲效果不错,可是在界面切换的时候略卡。
    react-native-material-design中实现了materal-design,效果不错,可是做者有段时间没有更新,若是使用最新的React-native 有些问题。
  2. awesome-react-native
    这个地址在持续更新着学习资料但主要以英文为主,收集很是多react-native项目。这里fork了项目NBAreact单纯以为nba不错,哈哈。在源码的基础本身练习了知乎日报的接口。
    这个app中使用了react-native-scrollable-tab-view,一个tab切换的库,react-native-router-flux一个界面跳转的路由库,我的认为很值得学习。
  3. 发现一个不错的react-native project, 代码很整齐,使用了Redux,很是值得学习。
    reading github 地址

Debug

debug须要借助于Chrome浏览器,首先下载react 的chrome插件,而后在应用菜单中选择远程调试,便可以进行实时断点调试,效果还不错。react

总结

就接触的几个开源项目而言,在安卓手机上的应用表现略卡,主要表如今界面切换等动画上。但开放一套能够适用于两个端,诱惑力仍是很大的。对于原有的native应用能够考虑把一些简单的界面用react-native来实现。android

思考

整体感受react-native 仍是有挺多不完善的地方,与原生代码相比,仍是有一些差距。可是react-naive 也是在不断的完善中,有点像早期android,有些经常使用的库比较缺失,能够考虑按照native的思路多造一些轮子。特别是android做为一个开源的系统,不少思路均可以应用于react-native。好比界面切换的路由设置、数据传递等,theme,style的通用实现等,native的同窗能够考虑把这些功能加入到react-native中。愿react-native有一个美好的前景。ios

相关文章
相关标签/搜索