1.環(huán)境
首先電腦上必須要有運(yùn)行ios項(xiàng)目和react-native的環(huán)境鸟顺,以下說明都是基于,react-native以下簡稱RN器虾,iOS項(xiàng)目的環(huán)境就不用說了讯嫂,RN的環(huán)境準(zhǔn)備需要
Homebrew:運(yùn)行以下命令安裝
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
在Max OS X 10.11(El Capitan)版本中,homebrew在安裝軟件時(shí)可能會碰到/usr/local目錄不可寫的權(quán)限問題兆沙∨费浚可以使用下面的命令修復(fù):
sudo chown -R `whoami` /usr/local
Node:運(yùn)行以下命令
brew install node
為了避免以后過程中執(zhí)行npm命令慢的問題,請用以下評論把npm的地址切換到淘寶鏡像葛圃,這樣設(shè)置是全局的千扔,以后再執(zhí)行npm install時(shí)會很快
npm config set registry http://registry.npm.taobao.org
安裝react-native開發(fā)環(huán)境
執(zhí)行 sudo npm install -g react-native-cli
運(yùn)行到此憎妙,就可以創(chuàng)建一個(gè)基礎(chǔ)的RN的HelloWorld了。在終端上cd 到你的項(xiàng)目文件夾曲楚,執(zhí)行react-native init 項(xiàng)目名就可以初始化你的第一個(gè)RN項(xiàng)目了尚氛,注意!6床场阅嘶!在你的所有路徑了避免中文名稱,因?yàn)槲以谥奥窂街邪酥形拿Q后载迄,在打包第三方的時(shí)候出現(xiàn)很多看不懂的錯(cuò)誤Q度帷!护昧!剛才init的helloworld在一系列下載后你直接進(jìn)入到ios文件夾就可以執(zhí)行你的項(xiàng)目了魂迄。
Cocoapods:這是管理第三方庫用的工具,因?yàn)楫?dāng)你集成RN項(xiàng)目后需要在項(xiàng)目里用到RN的第三方庫惋耙,所以要用到這個(gè)工具捣炬。
運(yùn)行這個(gè)命令安裝:sudo gem install cocoapods
此時(shí)你又會遇到安裝不了的原因,因?yàn)楸粔φ篱唬阅阌忠デ袚Q鏡像來安裝
gem sources -l ? 查看你當(dāng)前的gem地址
gem sources --remove https://rubygems.org/
上面的https://rubygems.org/就是查看的gem地址湿酸,需要切換地https://ruby.taobao.org/
切換地址的命令
gem sources -a https://ruby.taobao.org/
咱們之后就要用cocoapod去setup,執(zhí)行pod setup灭美,這個(gè)是coocapods在設(shè)置master推溃,設(shè)置好master之后,就是去RN項(xiàng)目的目錄下届腐,cd到這里铁坎,這里說一下目錄結(jié)構(gòu),認(rèn)為還是按照官方RN項(xiàng)目的結(jié)構(gòu)來比較好.
主目錄:包含這ios項(xiàng)目的文件夾犁苏,index.ios.js文件硬萍,package.json文件。
你可能不會有js和json的那個(gè)文件围详,去創(chuàng)建一個(gè)朴乖,這里說明下,index.ios.js文件就是相當(dāng)于你的視圖層短曾,所以里面的代碼都是跟頁面展示有關(guān)的東西寒砖。你可以按照這個(gè)樣來寫一個(gè)簡單的例子。
其中TestNativeAndReact為你項(xiàng)目名字,這個(gè)是需要以后跟本地工程里面注冊有關(guān)系嫉拐,所以你需要記住并更改為你需要的固定的值哩都。
在去編輯package.json文件,這個(gè)文件里包含這rn需要的庫信息等婉徘,你可以按照以下來編輯
里面name字段改成上邊說的項(xiàng)目名稱漠嵌。接下來咱們要去ios工程下編輯Podfile文件咐汞,這里寫的是ios工程里需要的rn庫。
如果你的目錄和我上邊說的目錄是吻合的那么podfiel按照這樣寫就可以儒鹿,否則需要更改上邊的path目錄化撕。
做完上面的則就是萬事具備只欠東風(fēng)了,而東風(fēng)就是一些列的命令约炎。
在終端里進(jìn)入RN項(xiàng)目的目錄植阴,不是ios項(xiàng)目的目錄。執(zhí)行
npm install? 等待過后圾浅,目錄下會多出node_modules這個(gè)文件夾里面包含這各種庫的文件掠手。然后 cd ios ,就是進(jìn)入你本地的ios項(xiàng)目里狸捕,執(zhí)行 pod install 等一會喷鸽,會出現(xiàn)咱們經(jīng)常運(yùn)行的wrokspace文件,咱們打開后灸拍,就能看到里面是包含著rn庫的本地ios項(xiàng)目了做祝。
咱們?yōu)榱藴y試一下看看能不能運(yùn)行出來,就添加一個(gè)view鸡岗,繼承uiview混槐,像這樣
然后你就可以運(yùn)行看效果了,在運(yùn)行前你必須打開本地的rn服務(wù)纤房,終端 進(jìn)入ios項(xiàng)目的上層目錄纵隔,就是rn項(xiàng)目的主目錄翻诉,執(zhí)行炮姨,react-native start ?,在xcode里運(yùn)行項(xiàng)目碰煌,你就可以看到效果啦舒岸。有什么其他問題可以在下方留言。以后我還會寫出如何不用cocoapods直接集成到本地項(xiàng)目芦圾,和安卓版本的集成蛾派。