MyZone
必须的软件
Homebew
Mac系统的包管理器,用于安装NodeJS和一些其他必须的工具软件
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
解决
/user/local
目录不可写的权限问题
sudo chown -R `whoami` /usr/local
Node
React Native目前需要NodeJS 5.0或更高版本
brew install node
安装完node后建议设置
npm
镜像以加速后面的过程(注意:不要使用cnpm!cnpm安装的模块路径比较奇怪,packager不能正常识别!)
npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global
Yarn,ReactNative的命令行工具(react-native-cli)
Yarn
是Facebook提供的替代npm的工具,可以加速node模块的下载。React Native的命令行工具用于执行创建、初始化、更新项目、运行打包服务(packager)等任务。
npm install -g yarn react-native-cli
安装完
yarn
后同理也要设置镜像源
yarn config set registry https://registry.npm.taobao.org --global
yarn config set disturl https://npm.taobao.org/dist --global
如果你看到
EACCES: permission denied这样的权限报错
,修复/user/local
目录的所有权
sudo chown -R `whoami` /usr/local
Xcode
React Native目前需要Xcode 8.0 或更高版本.
虽然一般来说命令行工具都是默认安装了,但你最好还是启动Xcode,并在Xcode | Preferences | Locations菜单中检查一下是否装有某个版本的Command Line Tools。Xcode的命令行工具中也包含一些必须的工具,比如git等。
推荐安装的工具
Watchman
Watchman是由Facebook提供的监视文件系统变更的工具。安装此工具可以提高开发时的性能(packager可以快速捕捉文件的变化从而实现实时刷新)
brew install watchman
Flow
Flow是一个静态的JS类型检查工具。译注:你在很多示例中看到的奇奇怪怪的冒号问号,以及方法参数中像类型一样的写法,都是属于这个flow工具的语法。这一语法并不属于ES标准,只是Facebook自家的代码规范。所以新手可以直接跳过(即不需要安装这一工具,也不建议去费力学习flow相关语法)
brew install flow
Nuclide
Nuclide是由Facebook提供的基于atom的集成开发环境,可用于编写、运行和 调试React Native应用。推荐使用WebStorm
测试安装
init命令默认会创建最新的版本,而目前最新的0.45及以上版本需要下载boost库编译。此库体积庞大,在国内即便翻墙也很难下载成功,导致很多人无法正常运行iOS项目,可以暂时创建0.44.3的版本.
你可以使用--version参数(注意是两个杠)创建指定版本的项目。例如react-native init MyApp --version 0.44.3。注意版本号必须精确到两个小数点
react-native init AwesomeProject
cd AwesomeProject
react-native run-ios
提示:如果run-ios无法正常运行,请使用Xcode运行来查看具体错误(run-ios的报错没有任何具体信息)。