美文网首页
五、熟悉RN

五、熟悉RN

作者: mjwz5294 | 来源:发表于2018-02-25 12:06 被阅读0次

    一、搭建环境:

    1、ios调试环境很简单就搭建好了,但安卓不熟悉,需要研究研究了。

    (1)iOS模拟器调试很方便,修改js代码后,到模拟器,cmd+R就可以看到效果了

    (2)cmd+D,可以调出一些操作选项,很方便。

    2、运行:推荐方式为

    (1)To run your app on iOS:

      cd /Users/mac/Desktop/rntest

      react-native run-ios

      - or -

      Open ios/rntest.xcodeproj in Xcode

      Hit the Run button

    (2)To run your app on Android:

      cd /Users/mac/Desktop/rntest

      Have an Android emulator running (quickest way to get started), or a device connected

      react-native run-android

    对于安卓需要注意,一方面是环境要搭建好,另一方面要先启动好一个模拟器或者连接好一台真机。

    二、一些基础概念

    1、props:大多数组件在创建时就可以使用各种参数来进行定制,用于定制的这些参数就称为props(属性),最常见的属性,就是组件的style属性了

    2、state:props是在父组件中指定,而且一经指定,在被指定的组件的生命周期中则不再改变。 对于需要改变的数据,我们需要使用state。

    3、style:所有的核心组件都接受名为style的属性,它可以是一个js对象,也可以是一个数组,数组中位置居后的样式对象比居前的优先级更高,这样你可以间接实现样式的继承。通过设置样式,可以使组件外观表现更丰富。常见的样式包括:

    (1)view组件最基本的backgroundColor、width和height

    (2)view组件用于适配的flex、flexDirection、justifyContent、alignItems

    (3)需要更丰富且可复用的样式,可以StyleSheet.create来集中定义组件的样式

    三、一些标准组件

    1、View组件:常用作其他组件的容器,来帮助控制布局和样式

    2、Text组件:类似于label

    3、Image组件:有一个source属性,传入的是图片地址

    4、TextInput:允许用户在应用中通过键盘输入文本,有很多玩法,慢慢熟悉吧~

    5、ScrollView是一个通用的可滚动的容器

    6、FlatList组件用于显示一个垂直的滚动列表,其中的元素之间结构近似而仅数据不同

    (1)FlatList更适于长列表数据,且元素个数可以增删。和ScrollView不同的是,FlatList并不立即渲染所有元素,而是优先渲染屏幕上可见的元素

    (2)FlatList组件必须的两个属性是data和renderItem。data是列表的数据源,而renderItem则从数据源中逐个解析数据,然后返回一个设定好格式的组件来渲染

    7、SectionList:相对于FlatList,它可以分组

    四、网络

    1、普通Http请求,使用Fetch API

    2、全双工通信,使用WebSocket

    五、原理说明:

    1、https://www.jianshu.com/p/5cc61ec04b39

    2、不错的博客:http://blog.csdn.net/xiangzhihong8/article/category/5975059

    六、例子:

    1、https://segmentfault.com/a/1190000011078576

    2、https://f8-app.liaohuqiu.net/#content

    3、rn与oc混编:https://www.jianshu.com/p/f1deb1af3826

    七、法律问题:https://www.zhihu.com/question/65437198

    八、应用:

    1、安卓和iOS在很多地方实现有一定差异,我们要做的是尽量复用代码,不可避免时也需要针对平台的差异性,写两份代码

    2、有些功能RN没有,只能调用原生API时(比如日历),还是只能进行混编,所以RN是不可能取代原生代码的,二者最终只会进入一种平衡状态

    3、创业公司为节省人力,RN在这方面有很大用武之地。但对于大公司,使用原生API似乎更有优势。

    相关文章

      网友评论

          本文标题:五、熟悉RN

          本文链接:https://www.haomeiwen.com/subject/pwtrxftx.html