ReactNative探索与入门

        前段时间,团队在尝试用ReactNative来进行开发项目,事实上ReactNative相对原生或者纯h5是拥有极大的优势和便利的,这种尝试对于对于非前端开发人员来说当然是有一些阻力和阵痛的,但是这些都是必要的,因为国内当前开发的大环境对于这种快速迭代,敏捷开发的需求是巨大的。所以付出当然是值得的,更何况技术的探索和追求是永无止境的。

一、ReactNative的理解

  序:    不太喜欢用官方的说明来解释,太咬文嚼字,用自己的语言来阐述对她的理解比较通俗,当然可能不太精确或者有漏洞,但是其实对于探索和理解总是一步一步来的,总之要先有个大概的理解。

做客户端开发的同学都知道,原生开发其实有很多的限制,特别是苹果的审核机制,可谓是着实令国内的开发人员头疼不已,而且一旦线上出现问题,必须又要经过这套审核流程。所以苹果在保护广大用户方面的确是下了很大功夫,但是对于开发人员来说,特别是对一些需求变更频繁的公司业务来说,很令人头疼。在这之前要解决这样的问题,基本上就是靠加载在线前端页面来实现,但是这样一方面回消耗手机大量内存,另一方面,在之前手机配置特别是安卓手机在渲染方面,显卡效率较低,在手机上体验较差,通常在app中仅会加载某个活动页面使用纯线上h5页面。

 ReactNative就是在这种情况下更空出世。他不仅解决上述快速迭代遇到的瓶颈,可以快速开发,不经过审核远程下发更新,而且因为它使用js底层封装了对原生控件的调用,所以体验异常的接近原生水准。自此以后,开发人员可以通过一套代码跨平台开发iOS和安卓应用,并不需要每次经过审核,可以快速迭代,体验接近原生效果。从这个角度来看,你似乎感觉到它似乎像是一套前端框架,事实上没错,的确是这样。React Native (简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架。是方便于前端开发人员开发出媲美于原生体验的一套框架。

二、一些基本认识

1.开发环境搭建的详细教程,参考下列链接,毕竟这种都是都是固定流程。环境主要是包含node和命令行工具(react-native-cli)。

2.RN的基本架构。简单来说RN是react(框架)和api的结合。所以你最基本要掌握是react框架和fetch(API请求的框架,rn内置)的使用。

3.组件的理解。如果react是一个庞大的母体,那么,一个个的组件就是组成这个母体的不可或缺的载体。比如导航组件、list组件甚至包括fetch本身也可以理解成是一个组件。这点其实从原生端来理解。即iOS的控件,在基础控件之上封装的一个个可自由组合的控件称之为组件,可插拔式是组件的基本功能。就是拿出来是一个个的单独个人。而组合起来可以组成一个完美的结合体,所以目前原生端很流行的组件化的概念就是这个意思。说起来复杂,其实很简单,就是封装一个个的控件。

4.RN的项目组成


项目截图

可以看到,在生成项目之后,里面包含的很多文件夹和文件,其中android和iOS文件都是在创建项目的时候自动生成的,如果要兼容双平台。我们在app里面进行开发项目。所以在index.js中需要指向项目的入口文件。


index.js

5.npm。npm大致可以理解成iOS中的cocoapods或安卓中的gradle。所以你也应该知道它有多好用了。

6.任何一个项目的开发到完成都是需要一步一步的开发,一个文件一个文件的不断写出来的。所以不要着急,慢慢来。

7.这次主要先把一些rn的探索和基本组成进行介绍和剖析,项目的细节,我们下次开始一步一步来学习。最后,抛出这段时间跟着团队大神这段时间以来开发出来的成果,让大家相信,代码的世界不仅是由0和1组成的,我们的成长也是从0-1发展的。


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,425评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,058评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,186评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,848评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,249评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,554评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,830评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,536评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,239评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,505评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,004评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,346评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,999评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,060评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,821评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,574评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,480评论 2 267

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,565评论 25 707
  • 区块链技术发展到现在,各种基于区块链技术的项目层出不穷,比特币的大火带动了数字货币市场的蓬勃发展,区块链目前能解决...
    美味的汤圆阅读 324评论 0 0
  • 我们不曾去过雪的国度 但你留在心里的样子比雪更神圣 以至于我,不得不使其封存 所有人拥挤在命运交错的路口 向左走是...
    古月J阅读 806评论 16 19
  • 键盘回收三部曲: 1,设置代理对象 2,遵守代理协议 3,实现协议方法 第一步: self.rootView.aT...
    bu再等阅读 322评论 0 0