创建 React-Native 工程时,如何指定特定的 React-Native 版本
react-native 可能会出现一种情况,就是版本最高的可能出现有些东西不太稳定,这时候要用到旧的版本怎么办?就可以用以下方法创建项目。
0. 原因
创建新的 React-Native (以下简称 RN)的时候,我们一般都是用以下命令:
react-native init [Project Name]
这个命令会从 npm 安装 react-native package,然后用执行该 package 中的 cli.js完成工程文件初始化。
这里有一点不方便的是,由于react-native 自身的版本升级非常频繁(两周发布一个版本),还往往会造成向前不兼容(毕竟还没有到1.0版本)。因此,我们经常要创建使用不同版本 react-native 的工程进行测试,尤其是对那些第三方的组件。而使用react-native init [Project Name] 是做不到这一点的。
这个需求对我来说过于频繁,于是我就干脆复制了react-native-cli的代码,加了自己的参数,提交了一个新的 package rninit。
rninit 的安装和使用和react-native-cli类似。
1. 安装
npm i -g rninit
2. 使用
2.1 用最新的 react-native 版本创建工程:
rninit init [Project Name]
2.2 用特定的 react-native npm 版本创建工程:
rninit init [Project Name] --source react-native@0.42.
2.3 从某个 Git Repo. 创建工程:
rninit init [Project Name] --source git+https://github.com/facebook/react-native.git#v0.42.2
这也方便你从自己 Clone 或 Fork 的 react-native 版本来创建工程。
2.4 “source” 参数格式
--source 参数的格式其实就是所有 npm install 支持的参数格式
2.5 “verbose” 参数
原本 react-native 支持的 --verbose 参数仍然被支持:
rninit init [Project Name] --source react-native@0.42. --verbose
这样你可以看到 npm 安装过程中的详细输出信息。
创建 React-Native 工程时,如何指定特定的 React-Native 版本的更多相关文章
- 使用Idea第一次创建一个Mavne工程时没有src目录
在使用idea创建一个maven工程时没有src目录,可能出现的问题很多,我先把我自己的问题分享上来 因为没有src,可能是因为maven插件还没下载到本地仓库.maven插件的版本和jdk版本冲突或 ...
- Eclipse使用Maven创建普通Java工程时错误:Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart:RELEASE from any of the configured repositories.
报错信息如下: Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart:RELEASE f ...
- oracle创建第三方数据接口表,指定特定用户访问某张表
/*****创建用户并指定操作哪张表开始******/ --1.创建用户并设置默认表空间 CREATE USER CHENGDWY IDENTIFIED BY CHENGDWY DEFAULT TAB ...
- SimpleDateFormat 转化毫秒到日期时,指定特定的时区
http://blog.csdn.net/wangpeng047/article/details/8560690 影响TimeZone的因素: 1. 操作系统的时区设置. 2. 数据传输时时区设置. ...
- 在idea中创建maven父子工程,子工程无法导入父工程依赖的问题
创建maven父子工程时遇到一个问题,当子工程的名称前缀和父工程的名称一样时,子工程会出现一系列的问题.比如我的父工程名称是microservicecloud,子工程名称是microservicecl ...
- React Native工程中TSLint静态检查工具的探索之路
建立的代码规范没人遵守,项目中遍地风格迥异的代码,你会不会抓狂? 通过测试用例的程序还会出现Bug,而原因仅仅是自己犯下的低级错误,你会不会抓狂? 某种代码写法存在问题导致崩溃时,只能全工程检查代码, ...
- 执行Android项目时指定特定的AVD进行測试
一个Androidproject空间能够创建一个或多个AVD来对指定的Android项目进行測试,假设仅仅创建了一个AVD则执行Android项目时自然启动该AVD,但是假设创建了多个AVD那么我们该 ...
- iOS 10 (X8)上CoreData的使用(包含创建工程时未添加CoreData)
1.在创建工程时未添加CoreData,后期想要使用CoreData则要在工程Appdelegate.h文件中添加CoreData库和CoreData中的通道类(用来管理类实例和CoreData之间的 ...
- 【原】使用IDEA创建Maven工程时提示"...xxx/pom.xml already exists in VFS"的解决
问题:使用IDEA创建Maven工程时提示"...xxx/pom.xml already exists in VFS",怎么办? 解决:如果只是删除工程,还会有这样的提示.说到底, ...
随机推荐
- 【Math】协方差矩阵
一.统计学的基本概念 统计学里最基本的概念就是样本的均值.方差.标准差.首先,我们给定一个含有n个样本的集合,下面给出这些概念的公式描述: 均值: 标准差: 方差: 均值描述的是样本集合的中间点,它告 ...
- 【机器学习】粗糙集属性约简—Attribute Reduction
介绍 RoughSets算法是一种比较新颖的算法,粗糙集理论对于数据的挖掘方面提供了一个新的概念和研究方法.本篇文章我不会去介绍令人厌烦的学术概念,就是简单的聊聊RoughSets算法的作用,直观上做 ...
- java 多线程 23 : Timer
前言 定时/计划功能在Java应用的各个领域都使用得非常多,比方说Web层面,可能一个项目要定时采集话单.定时更新某些缓存.定时清理一批不活跃用户等等.定时计划任务功能在Java中主要使用的就是Tim ...
- ios 让textView被键盘挡住上移
注册键盘通知 #pragma mark - 键盘通知 - (void)addNoticeForKeyboard { //注册键盘出现的通知 [[NSNotificationCenter default ...
- 【转】Oracle 自定义函数语法与实例
原文地址:https://blog.csdn.net/libertine1993/article/details/47264211 Oracle自定义函数的语法如下: create or replac ...
- JQUERY的给Check全选功能
//给Checkbox提供全选功能 $("#checkall").click(function(){ if(this.checked){ $("input[name='c ...
- 多平台的网站实现单点登录系统(SSO)的开发思路 让你的会员中心更加统一(参考资料)
单点登录并不是一个新鲜的玩意儿,比较官方的解释是企业业务整合的解决方案之一,通俗来讲SSO就是一个通用的用户中心,国内比较流行的UCenter就是一套单点登录解决方案.而近期以CSDN明文存储用户密码 ...
- 【Android Studio】DDMS的模拟器控制(Emulator Control)不可用
问题:Win10,Android Studio2.1.3中,创建了一个安卓手机模拟器,但是在DDMS中模拟器控制(Emulator Control)是灰色不可用的(比如想模拟来电和来短信).如下图: ...
- 手动安装 MyEclipse6.5 FindBugs
手动安装步骤: 官方网址:http://findbugs.sourceforge.net/; 下载地址:http://sourceforge.net/projects/findbugs/files/f ...
- (DNS)dnsmasq部署DNS
转自:https://www.hi-linux.com/posts/30947.html Dnsmasq提供DNS缓存和DHCP服务.Tftp服务功能.作为域名解析服务器(DNS),Dnsmasq可以 ...