大家好,这是跋涉者,wadereye,说来惭愧, 我是从2017年8月25日左右开始学习React Native的,因为时间不多, 在学习的过程中,感觉资料非常零散,要趟过的坑巨多,遇到的问题也非常多。 作为新手,文章看的多,但是开始写具体应用的时候,往往一脸迷茫。 所以,我一边学习,一边把学习React_native写过的测试放和看过的资料在这里,供大家参考 .
我整理的要学RN 之前,最好要掌握的基础知识:
HTML基础知识
CSS基础知识
Javascript 基础知识
Node JS基础
Android调试基础
1.HTML/CSS/Javascript 这些基础概念,推荐学习网站:http://www.w3school.com.cn/,起码要把这个网站上关于这几个分类的教程看一遍
2。学习React 和ES6的基础知识,推荐教程:http://www.ruanyifeng.com/blog/2015/03/react.html
ES6教程http://es6.ruanyifeng.com/#docs/intro
我的环境搭建步骤:
一、学习环境安装步骤
我的环境是Win10+Android调试(真机),使用VS code开发代码
按照这个文档,一步一步来:
1. http://reactnative.cn/docs/0.47/getting-started.html
下载node.JS的时候:
https://nodejs.org/en/
https://nodejs.org/dist/v6.11.3/node-v6.11.3-x64.msi
Download for Windows (x64)
v6.11.3 LTSRecommended For Most Users
很多同学下高版本,会出现许多问题,对初学者信心打击很大,头疼的很。
再说一遍:.node.js版本问题,不要乱选择,一定要下载官方推荐版 本
2. 按照 原文件所说安装,注意细节步骤
此处注意:真机调试:因为我用的真机(一个杂牌android手机,android 4.0)android的版本低,不能通过usb直接调试,使用内部wifi可调通,
当调试出现红屏幕的时候,按手机菜单键,打开菜单->Dev Settings ->Debug Server host & port for device ->设置你机器的IP:8081端口->注意打开本机调试防火墙8081端口
Node js 要注意打开你本机的安全防火墙规则,添加8081端口出入栈规则,具体操作请参考相关资料。
二、 开发工具,我选择VS code
https://code.visualstudio.com/docs/?dv=win
插件:
• React Native Tools:微软官方出的ReactNative插件,非常好用
• Reactjs code snippets:react的代码提示,如componentWillMount方法可以通过cwm直接获得
• Auto Close Tag:自动闭合标签
• Auto Rename Tag:自动重命名标签,配合上面的插件使用,基本上能赶上IntelliJ IDEA系的功能了
• Path Intellisense:文件路径提示补全
Build:在项目目录下react-native run-android(我是用的android调试)
三、 我的学习计划
做一个小功能,依次一步一步的加功能
我写的demo:
https://github.com/wadereye/Learn_React_Native/tree/master/demo1
四、如何使用
所有的目录download或者 git clone下来以后 ,进入目录:
然后运行 npm install
完成以后运行 react-native run-android或者 react-native run-ios
关于调试:当你更改代码以后,在手机里直接Reload一下就可以了看到更新的内容了。
看了别人的代码,我一般copy到expo里面,看看效果,研究一下别人做这个的思路,把一些属性搞明白 。
五、demo1关于StackNavigator的用法的测试,用RN写的在页面之间导航并传递参数
本页面是对这篇文章
https://reactnavigation.org/docs/intro/
的演示测试。
六、关于导航条的学习:
参见我的demo2
react-navigation包含了一下三类导航器:
StackNavigator:用于提供屏幕(页面)之间的互相跳转。当一个新的屏幕打开的时候,他被显示在最顶部。
TabNavigator :一个切换卡,用于多个屏幕之间的切换。
DrawerNavigator -:提供一个从屏幕左侧划出的抽屉。用于放菜单选项
作者:焚_44b3
链接:http://www.jianshu.com/p/248e36762a08
來源:
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
建议这篇文章 :
http://www.jianshu.com/nb/15198589
导航条样式:http://www.jianshu.com/p/60728616e4b8
StackNavigator:用于提供屏幕(页面)之间的互相跳转。当一个新的屏幕打开的时候,他被显示在最顶部。
参考这篇文章
http://www.jianshu.com/p/30f645127b04
我写的demo的地址:
https://github.com/wadereye/Learn_React_Native
欢迎交流与讨论