React Native 架構(gòu)篇(一)

上次我們講了組件,想必大家對React組件有了一定的了解了吧。但是離做一款app出來還是有很長的距離,一個(gè)好的架構(gòu)能幫助開發(fā)者更好的完成高質(zhì)量的代碼。今日就來說道說道這個(gè)RN的架構(gòu)怎么搭~(大佬們有見解可提出來啊)。

說起架構(gòu)最為常用的就是,React Native + Redux,所有我們就來搭建這樣一個(gè)框架。

1、Redux

這個(gè)具體看Redux文檔吧,我只簡單的說一下,React中又一個(gè)state狀態(tài)變量,我們可以通過改變這個(gè)變量來局部刷新頁面,那么當(dāng)我有好多個(gè)頁面同時(shí)都和這個(gè)state有關(guān)該如何做呢?這時(shí)就能夠用到redux,redux提供了一個(gè)唯一的state樹(后面將稱之為store),將組件中的state連接到store,通過改變store中的值來改變多個(gè)組件中的state值,從而達(dá)到同步刷新的效果。redux中包括action與reducer,這兩樣都是為了方便組件來改變store中的state值。我個(gè)人理解action 就是方法申明,reducer就是方法實(shí)現(xiàn)。這里先不寫action與reducer怎么寫,畢竟我們要說的的是架構(gòu)。

2、具體架構(gòu)


我新建了一個(gè)app目錄代表這是我實(shí)現(xiàn)app的部分,component表示react組件,action與reducer分別代表redux的兩個(gè)模塊,constant代表常量,util代表公共方法,image圖片。component里的Home表示主頁的組件,App是我們app具體的實(shí)現(xiàn)的一個(gè)入口。index是component索引(用ES6的import方法import進(jìn)來component文件夾就會(huì)自動(dòng)找到文件夾下的index.js文件 )。

這是比較基礎(chǔ)的架構(gòu)了,有想法的小伙伴也可自行擴(kuò)展。

3、執(zhí)行流程

我們知道RN程序的入口是index.xxx.js,分為iOS和android,而實(shí)際上我們只有一套代碼,這就需要我們將這兩個(gè)文件指向同一個(gè)js文件,我在這兩個(gè)文件里都只寫了一句話:

require('./app');

這句話其實(shí)就是執(zhí)行了 ./app/index.js 文件。 這樣我們真正的入口就變成了 ./app/index.js

我們再來看./app/index.js文件具體實(shí)現(xiàn)。

嘿嘿,這里我只給了截圖,也是提醒大家不要光copy了,理解才最要。這里除了注冊了app,還將app綁定到了redux,相比這幾行代碼也不難懂,我就不嚼舌頭了哈哈,原諒我表述能力一般。這樣就成功進(jìn)入到我們的主程序App。


欲知后事如何,請聽下回分解!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容