【RN - 基础】之Windows下搭建React Native开发环境
前言
React Native由Facebook公司于2015年F8大会上开源,其主张“Learn once, write everywhere”。React Native的核心设计理念是:既拥有Native(原生)的用户体验,又拥有React的开发效率。
目前,React Native已经基本上完成了对多端的支持,实现了真正意义上的面向配置的开发。开发者可以灵活的使用HTML和CSS进行布局,使用React语法构建组件,实现H5、Android、iOS等多端的代码复用。
就目前来看,React Native的优势有三点:跨平台、追求极致的用户体验、Learn once, write everywhere。
以上是对React Native的简单介绍,接下来言归正传,介绍Windows下React Native的开发环境的搭建。
准备工作
在配置React Native的开发环境之前,我们首先需要具有这些环境:
JDK
去Oracle的官网上下载。别忘了配置环境变量。
SDK
SDK可以通过下载并安装Android Studio来获取,反正以后是以RN和原生代码结合开发的,因此下载AS是必须的。安装之后别忘了配置SDK的环境变量。
安装好SDK之后,打开SDK Manager,下载一些组件,需要确保以下几点:
- Extras文件夹中的组件全部下载;
- 下载API 23或23以下的版本的Platform以及Image,并在Tools中下载这个API版本的最低版Build-tools。
下载完成之后,可以先创建一个Andorid模拟器,留待后用。
Git
下载并安装Git,配置SSH KEY、用户名和邮箱等。
Node
1、在NodeJS官网下载NodeJS + NPM的安装包(地址: https://nodejs.org/en/download/ ),选择Windows Installer (.msi)下载到本地,安装到任意目录下;
2、为检查Node是否安装成功,我们可以通过 node -v 、 npm -v 、 nvm v 三个命令来查看Node环境的版本。
配置React Native
在GitHub中搜索 react-native ,找到Facebook的项目react-native,打开Git Bash使用git clone命令将其克隆到本地,如: git clone https://github.com/facebook/react-native.git 。
克隆成功后,打开命令行工具,进入刚刚克隆的项目中的 react-native-cli 目录中,输入 npm install -g 命令,等待安装完成,就可以在命令行中使用react-native命令了。
为了验证React Native是否安装成功,我们可以通过 react-native -v 命令来查看RN的版本。
React Native版本控制
我们可以通过一下几条命令来对React Native进行版本控制。由于React Native现在还处于高速发展的阶段,因此GitHub上的仓库更新会很频繁,因此我们需要与时俱进,及时下载体验最新的React Native组件。
查看React Native的当前版本: react-native --version
查看React Native在npm包中的最新版本: npm info react-native
更新本地React Native的版本(更新到最近最稳定的版本): npm update –g react-native-cli
将React Native升级或降级到某个指定版本: npm install –-save react-native@版本号
下载并运行默认项目
React Native为我们提供了一个默认的入门项目AwesomeProject,我们可以通过这个项目来入门React Native,同时进一步验证React Native是否真正的安装成功了。
1、创建一个目录用来盛放AwesomeProject,然后打开cmd,进入这个目录中,输入 react-native init AwesomeProject 命令,等待一段时间,直到出现“To run your app on Android ......”,表示初始化AwesomeProject完成。
2、在cmd中进入AwesomeProject中,输入 react-native start 命令,开启React Native的服务器。
3、打开一个Andorid模拟器。
3、不要关闭开启服务器的cmd,重新打开一个cmd,进入AwesomeProject下,输入 react-native run-android 命令,将项目运行到Andorid模拟器上。
注意:
第一次运行的时候会下载gradle包,可能会比较慢,需要耐心等待。
如果运行时报错,可以查看cmd中的错误信息,主要查看“What went wrong”标题下的错误信息,一般都是SDK Manager中下载的组件不合格导致的。
如果出现“Starting intent: ......”字样,则表示运行成功,跳转到模拟器中,就可以看到项目的Welcome界面了。
如果模拟器上爆红,大家可以根据错误信息,百度或Google解决。
开发工具推荐
Web Storm
Web Storm是JetBrains下的一款产品,可以开发很多由JavaScript衍生的框架代码。
Web Storm的优点是,它与Android Studio很相似,因此使用过AS的人会很容易上手。
Web Storm的缺点是,它对React Native的支持还不够完善,比如,代码提示不完善等。而且,Web Storm还需要破解。
VS Code
VS Code,全称Visual Studio Code,一看就是MS的产品,但它摒弃了VS臃肿的特点,VS Code特别轻量,几乎就是一个文本编辑器,但它的功能还是很齐全的。
VS Code的优点是,轻量,开源,对React Native支持较好。
VS Code的缺点是,设置比较繁琐,快捷键什么的用起来不顺手。
针对上面两种开发工具,我认为在开发React Native来说,VS Code是比较好用的。
参考资料:
【RN - 基础】之Windows下搭建React Native开发环境的更多相关文章
- Mac下搭建react native开发环境
安装必需软件 Homebrew Homebrew, Mac系统的包管理器,用于安装NodeJS和一些其他必需的工具软件. /usr/bin/ruby -e "$(curl -fsSL htt ...
- react-native —— 在Windows下搭建React Native Android开发环境
在Windows下搭建React Native Android开发环境 前段时间在开发者头条收藏了 @天地之灵_邓鋆 分享的<在Windows下搭建React Native Android开发环 ...
- React Native开发 - 搭建React Native开发环境
移动开发以前一般都是原生的语言来开发,Android开发是用Java语言,IOS的开发是Object-C或者Swift.那么对于开发一个App,至少需要两套代码.两个团队.对于公司来说,成本还是有的. ...
- 搭建React Native开发环境
搭建React Native开发环境 本文档是Mac下搭建的环境,针对的目标平台不同,以及开发 iOS 和 Android 的不同,环境搭建也有差异. Github地址:https://github. ...
- Windows下搭建Spark+Hadoop开发环境
Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...
- Windows下搭建objective C开发环境
摘自:http://blog.csdn.net/zhanghefu/article/details/18320827 最近打算针对iPhone.iPod touch和iPad开发一些应用,所以,需要开 ...
- windows下搭建nginx+php开发环境
windows下搭建nginx+php开发环境 1.前言 windows下大多我们都是下载使用集成环境,但是本地已经存在一个集成环境,但不适合项目的需求.因此准备再自己搭建一个环境. 2.准备 工具: ...
- 手把手教你在Windows下搭建React Native Android开发环境
最近看到React Native好像好厉害的样子,好奇心驱使之下体验了一下并将在Window下搭建React Natvie Android环境的步骤记录下来,并有需要的朋友参考.(我都是参考官方文档的 ...
- Windows下搭建Android NDK开发环境及命令行编译
首先说明本文内的相关安装操作参考<Pro Android C++ with the NDK>一书. 安装 Windows搭建Android NDK开发环境需要安装如下部分(同时需要配置对应 ...
随机推荐
- mysql如何解除死锁状态
第一种: 1.查询是否锁表 show OPEN TABLES where In_use > 0; 2.查询进程(如果您有SUPER权限,您可以看到所有线程.否则,您只能看到您自己的线程) sho ...
- JavaSE语法
二.JavaSE语法(上) 1.Java 有没有 goto 语句? goto 是 Java 中的保留字,在目前版本的 Java 中没有使用.根据 James Gosling(Java 之父)编写的&l ...
- [考试反思]0719NOIP模拟测试6 + 0722NOIP模拟测试7
连续爆炸,颇为愉快. 第6次:Rank #4 第7次:Rank #9 对于第6次考试,个人比较满意,因为T1只是差了一个卡常. 因为在考试前两天刚讲了矩阵,满脑子都是矩阵,还想到了循环矩阵优化. 整个 ...
- call 与apply深入
http://blog.csdn.net/bao19901210/article/details/21614761
- 微信小程序如何解析html内容
最近项目上遇到在微信小程序里需要显示新闻内容,新闻内容是通过接口读取的服务器中的富文本内容,是html格式的,小程序默认是不支持html格式的内容显示的,那我们需要显示html内容的时候,就可以通过w ...
- Can't connect to MySQL server on 'localhost' (10061),连接Navicat报错问题解决
今天,装了Mysql 1.1.7后,连接Navicat 时报错,后来找了一阵,发现问题所在. 原因是我在安装时把默认端口号3306修改成了3303, 连接时,把默认端口也修改下就好啦.
- 【Canvas真好玩】从黑客帝国开始
前言 笔者之前有一段时间一直在学习Canvas相关的技术知识点,通过参考网上的一些资料文章,学着利用简单的数学和物理知识点实现了一些比较有趣的动画效果,最近刚好翻看到以前的代码,所以这次将这些代码实践 ...
- Android9.0 SystemUI 网络信号栏定制修改
前情提要 Android 8.1平台SystemUI 导航栏加载流程解析 9.0 改动点简要说明 1.新增 StatusBarMobileView 替代 SignalClusterView,用以控制信 ...
- C#同级catch块和finally块中全都抛出异常,上一级捕获哪一个?
C#同级catch块和finally块中全都抛出异常,上一级优先捕获finally块中的异常. 测试代码: using System; namespace test { class Program { ...
- Java nio 空轮询bug到底是什么
编者注:Java nio 空轮询bug也就是Java nio在Linux系统下的epoll空轮询问题. epoll机制是Linux下一种高效的IO复用方式,相较于select和poll机制来说.其高效 ...