2018-06-19 RN 开发

RN 开发

环境搭建

1. Homebrew(系统的工具)

Homebrew, Mac系统的包管理器,用于安装NodeJS和一些其他必需的工具软件。

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

译注:在Max OS X 10.11(El Capitan)版本中,homebrew在安装软件时可能会碰到/usr/local目录不可写的权限问题。可以使用下面的命令修复:

sudo chown -R whoaim /usr/local

注意:如果当前的用户是管理员,需要对权限进行许可,在执行上面的指令前先执行:sudo chmod -R g+w /usr/local

2. Node

使用Homebrew来安装Node.js.

React Native目前需要NodeJS 5.0或更高版本。本文发布时Homebrew默认安装的是最新版本,一般都满足要求。

brew install node

3.YarnReact Native的命令行工具(react-native-cli

npm install -g yarn react-native-cli

-g 全局项目都可以使用

4.推荐安装的工具#

Watchman

Watchman是由Facebook提供的监视文件系统变更的工具。安装此工具可以提高开发时的性能(packager可以快速捕捉文件的变化从而实现实时刷新)。译注:此工具官方虽然是推荐安装,但在实践中,我们认为此工具是必须安装,否则可能无法正常开发。

创建RN 工程

react-native init AwesomeProject

cd AwesomeProject

react-native run-ios

使用yarn代替npm install

yard add代替npm install --save

其他坑

react native 调试经典错误Ensure that the packager server is running

react-native run-android 启动项目的时候,会自动启动一个JS服务器,相当于中间服务器的作用,虚拟机的项目连接的就是这个。然而在AS中直接点击运行并不会启动这个服务,需要自己手动启动,在react native项目中运行react-native start 先启动这个服务。

https://github.com/status-im/status-react/issues/2246

mvn -f modules/react-native-status/ios/RCTStatus/pom.xml dependency:unpack

2.坑

React Native: Command run-ios unrecognized

在项目下面 npm install --save react-native@latest

3.坑

运行命令行 react-native-git-upgrade

react-native version in "package.json" (0.51.0) doesn't match the installed version in "node_modules" (0.52.2).

4.坑

npm install如下冻结:

npm info it worked if it ends with ok

npm verb cli [ '/usr/local/Cellar/node/9.3.0_1/bin/node',

npm verb cli '/usr/local/bin/npm',

npm verb cli 'install',

npm verb cli '--verbose' ]

npm info using npm@5.6.0

npm info using node@v9.3.0

npm verb npm-session 96cbb8fb306ead19

npm info lifecycle edge-react-gui@0.2.0~preinstall: edge-react-gui@0.2.0

npm info lifecycle react-native-http@1.0.0~prepack: react-native-http@1.0.0

⸨ ░░░░░░░░░░░░░░░░░⸩ ⠧ loadIdealTree:loadAllDepsIntoIdealTree: info lifecycle react-nativ

删除package.lock.json之后,问题就消失了。由于某种原因,安装的其余部分花费了很长时间。

转成 5.5.1的版本

npm install -g npm@5.5.1

请将npm降级到5.5.1

如果你正在使用nvm的话

nvm安装8.9.3。

不要使用8.9.4,因为安装npm 5.6.0会破坏构建。

5.坑

Bundling index.ios.js [development, non-minified, hmr disabled] 0.0% (0/1), failed.

解决

yarn install

6.坑

java版本过高

7.坑

给你加点弄node 内存

node --max_old_space_size=4096 node_modules/react-native/local-cli/cli.js start

其他
打包iOS
所以我这次只执行了以下步骤
npm install
make release-ios
pod install

提示
'Statusgo/Statusgo.h' file not found

mvn -f modules/react-native-status/ios/RCTStatus dependency:unpack
pod install

安卓

make release-android

cd android && ./gradlew assembleRelease && cd ..

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

推荐阅读更多精彩内容