項(xiàng)目結(jié)構(gòu)分析
我們使用命令創(chuàng)建一個(gè)新的React Native項(xiàng)目:
react-native init helloRN
React Native開(kāi)發(fā)常用命令可以戳這里
項(xiàng)目目錄如下:
目錄分析:
android-----Android文件所在目錄,包含AndroidStudio項(xiàng)目環(huán)境文件几颜;
iOS ----- iOS文件所在目錄倍试,包含XCode項(xiàng)目環(huán)境;
node_moules ----- 基于node文件依賴系統(tǒng)產(chǎn)生的相關(guān)依賴和第三方lib蛋哭;
babelrc -----Babel的配置文件,Babel是一個(gè)廣泛使用的轉(zhuǎn)碼器县习,比如可以將ES6代碼轉(zhuǎn)為ES5代碼,從而在現(xiàn)有環(huán)境執(zhí)行谆趾。用來(lái)設(shè)置轉(zhuǎn)碼規(guī)則和插件躁愿;
watchmanconfig-----Watchman的配置文件,用于監(jiān)控bug文件和文件變化棺妓,并且可以出發(fā)指定的操作
flowconfig-----flow的配置文件攘已,flow用于靜態(tài)代碼檢查,用來(lái)捕獲常見(jiàn)的 bugs怜跑,比如隱式類型轉(zhuǎn)換样勃,空引用等;
gitattributes-----git屬性文件設(shè)定一些項(xiàng)目特殊的屬性性芬。比如比較word文檔的不同峡眶;對(duì)strings程序進(jìn)行注冊(cè);合并沖突的時(shí)候不想合并某些文件等植锉;
gitignore ----- 用來(lái)配置git提交需要忽略的文件辫樱;
buckconfig-----buck的配置文件,buck是Facebook開(kāi)源的高效編譯系統(tǒng)
index.js-----程序入口文件(老版本是index.android.js俊庇、index.ios.js)狮暑;
package.json-----項(xiàng)目基本信息(比如名稱、版本辉饱、許可證等元數(shù)據(jù))以及依賴信息(npm install安裝的模塊)等搬男;
yarn.lock-----Yarn 是 一個(gè)由 Facebook 創(chuàng)建的新 JavaScript 包管理器;每次添加依賴或者更新包版本彭沼,yarn都會(huì)把相關(guān)版本信息寫入yarn.lock文件缔逛。這樣可以解決同一個(gè)項(xiàng)目在不同機(jī)器上環(huán)境不一致的問(wèn)題。
程序入口
在入口文件index.js中注冊(cè)程序的入口組件姓惑,默認(rèn)入口主件是App.js,當(dāng)然你也可以自定義一個(gè)或多個(gè)組件注冊(cè)為程序入口褐奴。
希望對(duì)你有所幫助!