我的工程创建时间是2019.7.11号下午   :首先看一下最后我的工程的package.json各个包的版本:

{
"name": "MyApp",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"react": "16.8.3",
"react-native": "0.59.8",
"react-native-gesture-handler": "^1.3.0",
"react-navigation": "^3.11.0"
},
"devDependencies": {
"@babel/core": "^7.5.4",
"@babel/runtime": "^7.5.4",
"babel-jest": "^24.8.0",
"jest": "^24.8.0",
"metro-react-native-babel-preset": "^0.55.0",
"react-test-renderer": "16.8.3"
},
"jest": {
"preset": "react-native"
}
}

1.安装依赖

brew install node    brew install watchman    注意 node>10

安装yarn

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
 
在Appstore下载Xcode  版本>10
React Native 目前需要Xcode 9.4 或更高版本。你可以通过 App Store 或是到Apple 开发者官网上下载。
这一步骤会同时安装 Xcode IDE、Xcode 的命令行工具和 iOS 模拟器。
创建新项目
安装第三方依赖,再http://bbs.reactnative.cn/topic/4301/ios-rn-0-45以上版本所需的第三方编译库-boost等
选择最高版本,复制到.rncahce文件夹下
需要安装到根目录下的.rncache文件夹 所以执行一下操作,

hewenkedeMacBook-Pro:AwesomeProject hewenke$ cd ~

hewenkedeMacBook-Pro:~ hewenke$ mkdir .rncache

hewenkedeMacBook-Pro:~ hewenke$ cp ~/Downloads/boost_1_63_0.tar.gz ~/.rncache/

hewenkedeMacBook-Pro:~ hewenke$ cp ~/Downloads/double-conversion-1.1.5.tar.gz ~/.rncache/

hewenkedeMacBook-Pro:~ hewenke$ cp ~/Downloads/double-conversion-1.1.6.tar.gz ~/.rncache/

hewenkedeMacBook-Pro:~ hewenke$ cp ~/Downloads/folly-2018.10.22.00.tar.gz ~/.rncache/

hewenkedeMacBook-Pro:~ hewenke$ cp ~/Downloads/glog-0.3.5.tar.gz ~/.rncache/

hewenkedeMacBook-Pro:~ hewenke$ cd .rncache

hewenkedeMacBook-Pro:.rncache hewenke$ ls

boost_1_63_0.tar.gz folly-2018.10.22.00.tar.gz

double-conversion-1.1.5.tar.gz glog-0.3.5.tar.gz

double-conversion-1.1.6.tar.gz

hewenkedeMacBook-Pro:.rncache hewenke$ rm double-conversion-1.1.5.tar.gz

hewenkedeMacBook-Pro:.rncache hewenke$ ls

boost_1_63_0.tar.gz folly-2018.10.22.00.tar.gz

double-conversion-1.1.6.tar.gz glog-0.3.5.tar.gz

安装完第三方依赖,就可以创建新项目
react-native init AwesomeProject
初始化结束以后cd AwesomeProject && react-native run-ios
就可以启动项目
===>注意事项 不要初始化0.44版本的项目。问题太多。
 
 
app.js
/**
* Sample React Native App
* https://github.com/facebook/react-native
*
* @format
* @flow
*/ import React, {Fragment} from 'react';
import {
SafeAreaView,
StyleSheet,
ScrollView,
View,
Text,
StatusBar,
} from 'react-native'; import {
Header,
LearnMoreLinks,
Colors,
DebugInstructions,
ReloadInstructions,
} from 'react-native/Libraries/NewAppScreen'; const App = () => {
return (
<Fragment>
<StatusBar barStyle="dark-content" style={{backgroundColor:'#99cc61'}}/>
<SafeAreaView>
<ScrollView
contentInsetAdjustmentBehavior="automatic"
style={styles.scrollView}>
<Header />
<View style={styles.body}>
<View style={styles.sectionContainer}>
<Text style={styles.sectionTitle}>Step One</Text>
<Text style={styles.sectionDescription}>
Edit <Text style={styles.highlight}>App.js</Text> to change this
screen and then come back to see your edits.
</Text>
</View>
<View style={styles.sectionContainer}>
<Text style={styles.sectionTitle}>See Your Changes</Text>
<Text style={styles.sectionDescription}>
<ReloadInstructions />
</Text>
</View>
<View style={styles.sectionContainer}>
<Text style={styles.sectionTitle}>Debug</Text>
<Text style={styles.sectionDescription}>
<DebugInstructions />
</Text>
</View>
<View style={styles.sectionContainer}>
<Text style={styles.sectionTitle}>Learn More</Text>
<Text style={styles.sectionDescription}>
Read the docs to discover what to do next:
</Text>
</View>
<LearnMoreLinks />
</View>
</ScrollView>
</SafeAreaView>
</Fragment>
);
}; const styles = StyleSheet.create({
scrollView: {
backgroundColor: Colors.lighter,
},
body: {
backgroundColor: Colors.white,
},
sectionContainer: {
marginTop: 32,
paddingHorizontal: 24,
},
sectionTitle: {
fontSize: 24,
fontWeight: '600',
color: Colors.black,
},
sectionDescription: {
marginTop: 8,
fontSize: 18,
fontWeight: '400',
color: Colors.dark,
},
highlight: {
fontWeight: '700',
},
}); export default App;

页面就可以正常出来。

按照官网   需要路由,但是后期如果使用路由组件react-navigation 和react-native-gesture-handler 安装这两个库以后,react-native>=0.6就会出错

这两个的安装按照  官网来 连接  https://reactnavigation.org/docs/zh-Hans/getting-started.html#%E5%AE%89%E8%A3%85

这个时候需要吧版本降到0.6一下 比如0.59.8,我安装的是0.59.8  react-native  init demo --version 0.59.8 重新新建一个工程, 完了执行react-native run-ios  就可以运行了,这个编译时间比教长,就可以正常使用路由了

Mac 安装react-native 环境踩坑记的更多相关文章

  1. 史上最全Windows版本搭建安装React Native环境配置

    史上最全Windows版本搭建安装React Native环境配置 配置过React Native 环境的都知道,在Windows React Native环境配置有很多坑要跳,为了帮助新手快速无误的 ...

  2. 史上最详细Windows版本搭建安装React Native环境配置 转载,比官网的靠谱亲测可用

    史上最详细Windows版本搭建安装React Native环境配置   2016/01/29 |  React Native技术文章 |  Sky丶清|  95条评论 |  33530 views ...

  3. Windows版本搭建安装React Native环境配置

    1 安装Chocolatey 打开cmd黑窗口 @powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-obje ...

  4. react-native学习笔记--史上最详细Windows版本搭建安装React Native环境配置

    参考:http://www.lcode.org/react-native/ React native中文网:http://reactnative.cn/docs/0.23/android-setup. ...

  5. Windows版本搭建安装React Native环境配置及相关问题

    此文档整理参考地址: http://www.lcode.org/%E5%8F%B2%E4%B8%8A%E6%9C%80%E8%AF%A6%E7%BB%86windows%E7%89%88%E6%9C% ...

  6. 史上最详细Windows版本搭建安装React Native环境配置

    说在前面的话: 感谢同事金晓冰倾情奉献本环境搭建教程 之前我们已经讲解了React Native的OS X系统的环境搭建以及配置,鉴于各大群里有很多人反应在Windows环境搭建出现各种问题,今天就特 ...

  7. Mac 配置 React Native 环境

    OSX系统,这里假定你是iOS开发人员 Homebrew 是需要的,只有安装了Homebrew才能继续安装watchman和flow 安装 Node.js 4.0 或者更新的版本. 使用 Homebr ...

  8. 初识React Native,踩坑之旅....

    开启Genymotion Android模拟器后 1.运行“react-native run-android”报端口冲突....解决方法: 2.运行“react-native run-android” ...

  9. ThingsBoard安装编译搭建环境踩坑记录

    1.首先从github拉下来项目,我们采用源码编译的方式部署 git clone https://github.com/thingsboard/thingsboard.git 2.切换分支 git c ...

随机推荐

  1. WebRequest发送请求并接收返回值

    public string getXmlStr(string hphmcode)         {            string Url = "http://localhost:80 ...

  2. 容器————priority_queue

    #include <queue> 与queue不同的是可以自定义其中数据的优先级,让优先级高的先出队列. 优先队列具有队列的所有特性,包括基本操作,只是在这基础上添加了内部的一个排序,它本 ...

  3. nginx添加一个server

    nginx添加一个server server { listen 80; server_name dev.pccb.com; index index.html index.htm; # rewrite ...

  4. Vue项目中添加锁屏功能

    0. 直接上 预览链接 Vue项目中添加锁屏功能 1. 实现思路 ( 1 ) 设置锁屏密码 ( 2 ) 密码存localStorage (本项目已经封装h5的sessionStorage和localS ...

  5. 52、saleforce 导入csv文件

    Load Data Using the Custom Object Import Wizard 1. 2. 3. 4. 5. 6.然后就导入成功了

  6. 46、tensorflow入门初步,手写识别0,1,2,3,4,5,6

    1.使用tensorflow的SoftMax函数,对手写数字进行识别 Administrator@SuperComputer MINGW64 ~ $ docker run -it -p 8888:88 ...

  7. Idea JAVA項目的导入JAR包和导出jar包

    一.IDea项目中导入jar包 打开菜单project structure,然后选择modules/dependencies下选择右侧的+,选择jar包目录中的jar文件,导入 二.导出jar包 菜单 ...

  8. js对div取值与赋值

    js对div取值与赋值 因为JavaScript运行时,id="test1" 的那个div元素可能还没解析和加载,js加载是有顺序的.只需把 js 整个搬到 后面即可. 还有一个特 ...

  9. Openstack组件部署 — Keystone Install & Create service entity and API endpoints

    目录 目录 前文列表 Install and configure Prerequisites 先决条件 Create the database for identity service 生成一个随机数 ...

  10. 用processing生成屏保程序

    想法 利用随机数控制圆圈的大小.位置以及颜色,可以产生随机的美感. 让小球动起来,并且在屏幕边界处产生反弹效果. 代码 1: float circle_x = (float) 0.0; 2: floa ...