iOS拓展:react-native创建工程的坑和解决方法
正文
首先,在创建工程之前,你需要有环境。这个网上很多,不赘述。
我们直接从创建工程开始,一步步记叙这过程。
坑一
一、打开终端,cd到你放文件的位置(我放在桌面了):
yuqideMacBook-Air:~ yuqi$ cd /Users/yuqi/Desktop
二、然后创建工程:
react-native init RN1
输入完后,桌面就立马多了一个RN1文件夹,然后终端会跳出一大串代码,最后出现下图,说明创建完成:

三、运行
这个时候,正如终端提示那样,你有两个方法可以打开项目,首先尝试第一个(cd到文件夹,然后run-ios命令):
yuqideMacBook-Air:Desktop yuqi$ cd /Users/yuqi/Desktop/RN1 yuqideMacBook-Air:RN1 yuqi$ react-native run-ios
结果运行失败:

查资料后,找到解决方法:
删除node-modules文件夹,修改pakage.json文件,然后执行npm install。其中,pakage.json文件应该这么改:
把
"react": "16.0.0-alpha.12",
"react-native": "0.45.0"
改成下面的版本:
"react": "16.0.0-alpha.6",
"react-native": "0.44.3"


这时,再执行
yuqideMacBook-Air:RN1 yuqi$ react-native run-ios
发现成功运行,并打开了一个新的终端:


到此坑一以及解决方法结束。
坑二
当我开心的以为这样就成功的时候,打开Xcode,发现跑不起来!

然后开始疯狂得搜索错误原因和解决方法,然而很久都搜不到。。。
最终,get到的解决办法是创建项目的时候的命令加一个版本设定:
yuqideMacBook-Air:Desktop yuqi$ react-native init --version="0.42.0" RN2
创建完后,通过终端运行:


到此,终于成功创建。
作者:Jabber_YQ
链接:https://www.jianshu.com/p/507e69984251
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
iOS拓展:react-native创建工程的坑和解决方法的更多相关文章
- Ubuntu 16.04下使用Eclipse:创建工程时卡死的解决方法
问题如下: Ubuntu 16.04下使用Eclipse创建工程时出现卡顿和卡死,新建一个MapReduce项目卡了一下午,鼠标变成了圆圈进度条转了一下午,还关不掉. 当我直接去关闭新建项目的窗口时, ...
- 如何用 React Native 创建一个iOS APP?(三)
前两部分,<如何用 React Native 创建一个iOS APP?>,<如何用 React Native 创建一个iOS APP (二)?>中,我们分别讲了用 React ...
- 如何用 React Native 创建一个iOS APP?(二)
我们书接上文<如何用 React Native 创建一个iOS APP?>,继续来讲如何用 React Native 创建一个iOS APP.接下来,我们会涉及到很多控件. 1 AppRe ...
- 如何用 React Native 创建一个iOS APP?
诚然,React Native 结合了 Web 应用和 Native 应用的优势,可以使用 JavaScript 来开发 iOS 和 Android 原生应用.在 JavaScript 中用 Reac ...
- Mac中搭建 iOS 的 React Native 环境
手把手教你在Mac中搭建iOS的 React Native环境 http://www.cnblogs.com/damnbird/p/6074607.html 准备工作 1.你需要一台Mac电脑..(这 ...
- 记一次SpringBoot 开发中所遇到的坑和解决方法
记一次SpringBoot 开发中所遇到的坑和解决方法 mybatis返回Integer为0,自动转型出现空指针异常 当我们使用Integer去接受数据库中表的数据,如果返回的数据中为0,那么Inte ...
- MySQL中同时存在创建和更新时间戳字段解决方法浅析
MySQL中同时存在创建和更新时间戳字段解决方法浅析 明确我的MySQL版本.mysql> SELECT VERSION();+------------+| VERSION() |+------ ...
- React Native创建一个APP
React Native 结合了 Web 应用和 Native 应用的优势,可以使用 JavaScript 来开发 iOS 和 Android 原生应用.在 JavaScript 中用 React 抽 ...
- 手把手教你在Mac中搭建iOS的 React Native环境
准备工作 1.你需要一台Mac电脑..(这不是废话?我所用的是Air~~穷..) 2.我所操作的电脑系统环境是 3.xcode版本:8.0正式版 必需的软件 1.Homebrew Homebrew, ...
随机推荐
- lrc 校验码 ascii 格式
lrc 校验码 ascii 格式 将adr1 (站号)至最后一个数据内容相加,得到结果以256为单位,超出部分去除(如得到的结果为16#128H则只取28H,) 然后计算二次反补得到后的结果即为侦误 ...
- UBI - Unsorted Block Images
参考:http://www.linux-mtd.infradead.org/doc/ubi.html UBI - Unsorted Block Images Table of contents Big ...
- SyBase 百科
ylbtech_database_sybase 1, 百度百科 http://baike.baidu.com/view/118488.htm?fr=aladdin
- Linux内核实践之工作队列
工作队列(work queue)是另外一种将工作推后执行的形式,它和tasklet有所不同.工作队列可以把工作推后,交由一个内核线程去执行,也就是说,这个下半部分可以在进程上下文中执行.这样,通过工作 ...
- Android源码和内核源码的下载,编译和执行
笔者依据罗升阳老师的<Android 系统源码情景分析>一书,尝试下载,编译和执行Android源码和内核源码.但可能是软件源"被墙"或版本号更新的原因.期间遇到诸多问 ...
- 【Zookeeper】Zookeeper部署笔记
Zookeeper部署笔记 .上传zk安装包 .解压 .配置(先在一台节点上配置) .1添加一个zoo.cfg配置文件 $ZOOKEEPER/conf mv zoo_sample.cfg zoo.cf ...
- mysql binlog 使用
用于数据恢复的binlog 前提条件 1.定时mysqldumps全备数据库 2.开启binlog增量备份 情景:手滑误操作删表操作 立刻 mysql>flush logs; #开启一个新的b ...
- Neon Intrinsics各函数介绍
#ifndef __ARM_NEON__ #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) t ...
- Vue mixins extend
const mixins = { created () { console.log('mixins created') } } const mixins2 = { created () { conso ...
- mongoDB 高级查询语法
http://www.cnblogs.com/ITAres/articles/2084794.html本文参考自官方的手册:http://www.mongodb.org/display/DOCS/Ad ...