RN基礎(chǔ)學(xué)習(xí)

公司要求學(xué)習(xí)RN,就在網(wǎng)上搜索教程學(xué)習(xí)了下。
下面是按照步驟一步一步來操作:

一 安裝環(huán)境

對于iOS來說合武,必須要安裝的依賴環(huán)境是Node, Watchman, Xcode , Cocoapods 跃脊。
Xcode和Cocoapods安裝步驟就不說了。
推薦使用Homebrew來安裝 Node 和 Watchman捧书。

按照順序執(zhí)行
brew install node
brew install watchman 

(若你安裝了node , 檢查版本是否在12以上)
安裝完node后建議設(shè)置npm鏡像(淘寶源)

#使用nrm工具切換淘寶源
npx nrm use taobao

#如果之后想換成官方源可使用
npx nrm use npm

[Watchman(https://facebook.github.io/watchman)則是由 Facebook 提供的監(jiān)視文件系統(tǒng)變更的工具吹泡。安裝此工具可以提高開發(fā)時(shí)的性能(packager 可以快速捕捉文件的變化從而實(shí)現(xiàn)實(shí)時(shí)刷新)]

此處是插入知識點(diǎn):npm是什么 ?

(1)概念:npm是Node Package Manager的縮寫经瓷,意思是node的包管理器
(2)安裝:集成在node.js中爆哑,隨著Node.js 安裝時(shí)一起被安裝
(3)常見場景:前端框架reactNative, Vue, 后臺node開發(fā)等
(4)常見命令:
npm -v : 查看版本號
npm install XXX(包名) : 下載安裝包
npm install npm -g :更新最新的npm
npm i : 下載依賴庫( 會幫助檢測與當(dāng)前node版本最匹配的npm包版本號,并匹配出來相互依賴的npm包應(yīng)該提升的版本號 )

此處講下 Yarn

yarn 是Facebook提供的替代npm 的工具舆吮,可以加速 node 模塊的下載揭朝。

npm install  -g yarn

安裝完 yarn 之后就可以用 yarn 代替 npm 了队贱,例如用 yarn代替npm install命令,用 yarn add 某第三方庫名代替npm install 某第三方庫名

二 創(chuàng)建新項(xiàng)目

使用 React Native 內(nèi)建的命令行工具來創(chuàng)建一個(gè)名為"AwesomeProject"的新項(xiàng)目

第一種方法

npx react-native init AwesomeProject

(使用 React Native 內(nèi)建的命令行工具來創(chuàng)建一個(gè)名為"AwesomeProject"的新項(xiàng)目潭袱。這個(gè)命令行工具不需要安裝柱嫌,可以直接用 node 自帶的npx命令來使用(注意 init 命令默認(rèn)會創(chuàng)建最新的版本))
先到一個(gè)目錄下,如桌面屯换,創(chuàng)建完之后编丘,文件目錄如下:


工程目錄.png
Podfile里內(nèi)容如下:
Podfile內(nèi)容.png

采用這種方法創(chuàng)建的時(shí)候,運(yùn)行的時(shí)候可能會在 CocoaPods 的依賴安裝步驟卡很久(命令行停在 Installing CocoaPods dependencies)彤悔,會提示你采用pod install 安裝嘉抓。在執(zhí)行pod install的時(shí)候,會出現(xiàn)很多錯(cuò)誤晕窑,如報(bào)443(找個(gè)網(wǎng)好的多執(zhí)行幾遍就好了)或者fatal: the remote end hung up unexpectedly(去網(wǎng)上找找原因設(shè)置下抑片, 如下)

git config --global http.postBuffer 5242880000   
git config --global https.postBuffer 5242880000
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 99999999
如果都不行,則再去查詢下幕屹,或者找個(gè)網(wǎng)好的多試幾遍

pod install執(zhí)行成功以后蓝丙,運(yùn)行工程,跑起來會報(bào)錯(cuò)


截屏2021-03-12 上午11.08.25.png

去網(wǎng)上找了原因望拖,設(shè)置了下渺尘,如下,


截屏2021-03-12 上午11.09.37.png

但是還是不行说敏,請教了小組長鸥跟,他執(zhí)行了
需要到工程目錄下執(zhí)行下面這句
npm i   
上句成功后執(zhí)行
pod install

成功后Podfile文件里就會多了RN的依賴庫,工程可以正常跑起來盔沫。

但是采用這種方法創(chuàng)建的工程医咨,會出現(xiàn)很多問題,可以采用下面二種方法創(chuàng)建

第二種方法:指定版本

可以使用--version參數(shù)(注意是兩個(gè)杠)創(chuàng)建指定版本的項(xiàng)目架诞。注意版本號必須精確到兩個(gè)小數(shù)點(diǎn)拟淮。
先cd到某個(gè)目錄下,直接執(zhí)行下面語句谴忧,定好工程名字和版本號很泊,就會創(chuàng)建一個(gè)新的RN工程。

npx react-native init AwesomeProject --version X.XX.X

我選擇的版本是 0.62.0

npx react-native init AwesomeProject --version 0.62.0

第三種方法

可以使用--template來使用一些社區(qū)提供的模板沾谓,例如帶有TypeScript配置的:

npx react-native init AwesomeTSProject --template react-native-template-typescript

創(chuàng)建好工程之后委造,打開終端,到工程iOS目錄下均驶,執(zhí)行 pod install, 然后在工程主目錄下昏兆,執(zhí)行npm i, 下載依賴庫, 即可運(yùn)行起來了妇穴。
執(zhí)行了pod install, 還是跑不起來爬虱,看了下使用下面語句隶债,我沒試,大家可以試試
npm uninstall -g react-native-cli
npx react-native init AwesomeTSProject --template react-native-template-typescript

四 編譯并運(yùn)行 React Native 應(yīng)用

我是采用第二種方法創(chuàng)建的工程饮潦,可以在Xcode中直接運(yùn)行燃异,如果沒有修改過目錄中的任何文件時(shí),在終端命令行輸入yarn start命令, 若有任何修改继蜡,在終端命令行輸入yarn ios命令完成原生部分的編譯回俐。
模擬器顯示的結(jié)果是

截屏2021-03-12 上午11.58.38.png

到此為止,一個(gè)新項(xiàng)目就創(chuàng)建好了稀并。

參考鏈接為:https://www.react-native.cn/docs/environment-setup

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末仅颇,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子碘举,更是在濱河造成了極大的恐慌忘瓦,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件引颈,死亡現(xiàn)場離奇詭異耕皮,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)蝙场,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進(jìn)店門凌停,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人售滤,你說我怎么就攤上這事罚拟。” “怎么了完箩?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵赐俗,是天一觀的道長。 經(jīng)常有香客問我弊知,道長阻逮,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任秩彤,我火速辦了婚禮夺鲜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘呐舔。我一直安慰自己,他們只是感情好慷蠕,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布珊拼。 她就那樣靜靜地躺著,像睡著了一般流炕。 火紅的嫁衣襯著肌膚如雪澎现。 梳的紋絲不亂的頭發(fā)上仅胞,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天,我揣著相機(jī)與錄音剑辫,去河邊找鬼干旧。 笑死,一個(gè)胖子當(dāng)著我的面吹牛妹蔽,可吹牛的內(nèi)容都是我干的椎眯。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼胳岂,長吁一口氣:“原來是場噩夢啊……” “哼编整!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起乳丰,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤掌测,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后产园,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體汞斧,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年什燕,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了粘勒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,059評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡秋冰,死狀恐怖仲义,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情剑勾,我是刑警寧澤埃撵,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站虽另,受9級特大地震影響暂刘,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜捂刺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一谣拣、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧族展,春花似錦森缠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春宾茂,著一層夾襖步出監(jiān)牢的瞬間瓷马,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工跨晴, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留欧聘,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓端盆,卻偏偏與公主長得像怀骤,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子爱谁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,792評論 2 345

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