React Native 开发基础
2.1flexbox 布局基础知识
什么是Flexbox
Flexbox 是css3 里面引入的布局模型-弹性盒子模型,旨在通过弹性的方式来对齐河分布容器中的内容空间,
使其能够适应不同屏幕的宽度。react nativie中 的flexbox 是这个规范的一个子集
Flexbox解决了什么问题?
浮动布局
不同宽度屏幕的适
宽度自动分配
水平垂直居中
Flex 属性
容器属性
flexDirection : row,row-reverse,colum,colum-reverse #类型于linerlayout 里的 orientation 属性
flexWrap : wap,nowap,wap-reverse #textview 是否换行
alignItems : flex-start,flex-end,center,stretch # item 的 排列对齐方式 ,上对齐,下对齐 上下间距对齐, 以及严苛对其
justifyContent:flex-start,space-between,space-roud # 类似于linerlayout里 layout_gravity 属性
元素属性
flex :number #类型于weight 属性
alignSelf :atuo,flex-start,stretch #类似于 gravity 属性
其他
flex-flow flexDirection 和 flexWrap 属性 的简写形式,默认值为 row nowrap
更详细的布局知识可以参见下面
React Native 布局指南-v4.pdf
2.2.JaveScript 语法基础
经常看到源码里面符号 =>表示的意思
//ES
var selected = allJobs.filter(function (job) {
return job.isSelected();
});
// ES6
var selected = allJobs.filter(job => job.isSelected());
2.3 React Native 开发基础支持及代码解读
在React中,所有UI的组件都被放置在render()方法中,并且被state状态控制。
你的render()方法定义了UI在各种状态是如何展现的。当调用setState()的时候,React会找到需要改变的部分并替你修改。
一个简单的按钮时间可以通过如下表示
{this.state.buttonClicked ? ‘Hello World’ : ‘Goodbye World’}
this.setState({buttonClicked:!this.state.buttonClicked});
2.4 组建生命周期图
就像 Android 开发中的 View 一样,React Native(RN) 中的组件也有生命周期(Lifecycle)。所谓生命周期,
就是一个对象从开始生成到最后消亡所经历的状态,理解生命周期,是合理开发的关键。RN 组件的生命周期整理如下图:
可以把组件生命周期大致分为三个阶段:
第一阶段:是组件第一次绘制阶段,如图中的上面虚线框内,在这里完成了组件的加载和初始化;
第二阶段:是组件在运行和交互阶段,如图中左下角虚线框,这个阶段组件可以处理用户交互,或者接收事件更新界面;
第三阶段:是组件卸载消亡的阶段,如图中右下角的虚线框中,这里做一些组件的清理工作。
学习更详细信息参考链接
通往全栈工程师的捷径 —— React
http://mp.weixin.qq.com/s?__biz=MzA3NTYzODYzMg==&mid=401107957&idx=1&sn=200418877771f656c1a0ab33ad407516&scene=1&srcid=1119XfFA8t5QQprIjzp76fcr&key=ff7411024a07f3ebf6601418be94ccd6219ed18e580029547278b6eadd5def524defc8dbfdfcf673a7daa87723cfa4bb&ascene=0&uin=NTYzMDc5MTc1&devicetype=iMac+MacBookPro11%2C1+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=a82zcv0P%2B6ztN4xgcdnD%2FWtFbQjxhMOiiUJGZVbk6FUhTeozLqrMlGuES%2FvVmaI0