1.学习react-native需要哪些知识
2.react-native原生组件踩过的坑
3.第三方常用的不错组件
4.对redux的理解
学习react-native知识储备
1.react框架的学习
2.因为react默认使用的都是es6的语法,所以建议好好看一下阮一峰老师的es6的书籍 http://es6.ruanyifeng.com/,es6中的let、const、 解构赋值 、class 、模块化(export import) 、promise等都是最常用的
3.如果有前端基础,那么react-native中的样式都是跟web中的类似,内联的写法,但是并不支持继承样式,除少部分控件内部可以实现继承样式
4.react-native中的布局默认是使用的弹性布局,另外还有position 、zIndex属性,掌握这些基本布局没有什么困难
5.如果学习过redux,把redux用在项目中,肯定会更好的,但是不适用redux也不妨碍你能完成一个优秀的react-native项目
react-native那些年踩过的坑
1.Image 使用source={require(‘../../../res/images/ic_gps_black.png’)}
require括号里只接受常量,不接受变量,如果要设置动态加载的图片,得把source后的数据设置为变量,即
let url = require(‘../../../res/images/ic_gps_black.png’)
source={url}
2.点击事件,react-native原生组件中View默认是监听不了点击事件的,默认监听了点击事件的控件(Button, Text),Button样式不可修改,所以如果需要给一个容器添加点击事件,这时就得使用TouchableXXX去包住View,然后进行监听点击事件
3.Text组件是可以实现样式继承的,并且Text组件可以包住Text,Image的,编写富文本界面时,这个是非常方便
4.如果是适配Android跟iOS两端,就算是组件支持这两端的,也得时时查看效果,跨平台的组件 样式以及支持的属性还是有差异不少的
5.webview中可以使用注入html或者js代码
第三方常用的不错组件
1.react-native-swiper banner类效果
2.react-navigation 实现侧滑,导航栏,标题以及路由功能,以及简易与redux结合
3.react-native-splash-screen 启动页
4.react-native-video 播放视频
5.react-native-scrollable-tab-view 导航页
6.redux、react-redux、 redux-thunk 、redux-actions 、redux相关的第三框架
redux的理解
1.redux的三大原则:单向数据流动、状态只读、使用纯函数来执行修改
2.redux可以使用中间件applyMiddleware、增强器StoreEnhancer来针对store进行扩展,redux-thunk、redux-actions、redux-promise、redux-saga等都是在此上进行拓展出来的第三方框架
3.redux从action->dispatch(actions)->中间件->reducer->store读取数据
store的数据是只读的,如果需要更改数据,只能通过派发一个action
4.在项目中使用时,使用redux,要复杂不少,数据状态使用store保存,派发action,最后从store中读取数据,远不如直接操作状态来的快舒服,但是使用redux后,整个项目的数据状态流向清晰,模块分的多了,但是代码整洁,修改非常容易
apk:http://119.29.176.210/react/cx.apk