This repository provides a complete RN app demo, including integrated react navigation, redux, network requests and custom components. 这个仓库提供了一个完整的 RN app demo,包括集成 react navigation,redux,网络请求及自定义组件
一个完整、普适但不臃肿的 React Native 脚手架,具有下述特点:
update 2018-04-25:由于现在 RN 及其相关插件更新频繁,如果出于学习的目的,安装依赖时最好按照
package.json
中指定的 package 版本进行安装,熟悉 RN 开发流程后再升级版本。
没有在 windows 下运行,但 RN 本身与操作系统无关,配置好环境可以开发安卓应用。
下载本项目,并安装依赖包;
安装 React Native CLI 及安卓/iOS 开发环境(可参考 RN 官网介绍 Building Projects with Native Code)
进入项目根目录,执行下面命令:
react-native run-ios # ios
react-native run-android # 安卓
也可通过 Xcode 打开 ios 目录下的 “项目目录” 后点
运行
或者 Android Studio 打开android
目录后点运行
启动项目。
目录结构如下:
.
|-- android
|-- ios
|-- src
| |-- assets
| |-- components
| | |-- XgToast.js
| |
| |-- config
| | |-- pxToDp.js
| | |-- route.js.js
| | |-- xgHttp.js
| | |-- xgRequest.js
| |
| |-- redux
| |-- screens
| | |-- ScreenHome
| | | |-- index.js
| | | |-- style.js
| | | |-- view.js
| | |-- ScreenWebView
| | |-- 其他页面文件
|
|-- App.js
|-- app.json
|-- index.js
目录说明如下:
android/
# android 原生代码(使用 android studio 要打开这个目录,如果直接打开父目录报错)
ios/
# ios 原生代码(使用 xcode 打开这个目录下的项目目录)
src/
# 放置所有原始的 react native 代码
src/assets/
# 图片、样式文件
src/components/
# 自定义组件目录
src/components/XgToast.js
# 这个是自定义 Toast 组件
src/config/
# 配置文件目录,比如路由配置
src/config/pxToDp.js
# 单位自适应文件
src/config/route.js
# 路由文件
src/config/xgHttp.js
# 网络请求文件
src/config/xgRequest.js
# 具体网络请求 API 列表
src/redux/
# redux 状态管理目录
src/screens/
# 所有页面文件
src/ScreenHome/
# 这个目录是放具体页面文件的,为了进一步关注代码分离,里面又分为三个文件:index.js
# 中包含逻辑部分,style.js
中包含样式部分;view.js
中包含视图或者说页面元素部分。其他页面文件结构与此相同。
src/ScreenWebView/
# 内嵌 H5
App.js
# 可以理解为 react native(js 部分) 代码部分的入口文件,比如整个项目的路由在这里导入
app.json
# 项目说明,主要给原生 app 打包用,包括项目名称和手机桌面展示名称 React Native : 0.41 app.json
index.js
# 打包 app 时进入 react native(js 部分) 的入口文件(0.49 以后安卓、ios 共用一个入口文件)
有同学在使用这个仓库的时候发现了问题并提了 issue,部分汇总如下,便于查看问题:
关于该项目更为具体的介绍可查看这两篇文章,详细介绍了开发过程:
开发 React Native APP —— 从改造官方 Demo 开始(一)
开发 React Native APP —— 从改造官方 Demo 开始(二)