node4+ npm3+ # 环境要求
npm i # 在项目里面安装依赖
npm run ios # ios
npm run ad # android
|
├──ios/ * IOS
|
├──android/ * Android
|
├──src/ * 主程序
│ │
│ │──components * 所有组件
│ │
│ └──pages * 所有页面
│ │
│ └──images * 本地图片资源
│ │
│ └──utils * 将任何不涉及依赖的复用纯函数进行封装
│ │
│ └──common * 项目常用的封装
│ │
│ └──styles * 所有样式变量集中管理,为可切换主题做准备
│ │
│ └──service * 封装服务性质的包,如api网络服务、全局配置、缓存封装..
│ │
│ └──index.js * App入口
│
│──package.json * 包信息
│
│──.babelrc * Babel配置
│
└──reset.sh * 清空项目依赖并重新安装
本脚手架已经配置好环境,直接使用即可
- install dep
$ npm install antd-mobile-rn --save
$ npm install babel-plugin-import --save-dev
- config
.babelrc
{"plugins": [["import", { "libraryName": "antd-mobile-rn" }]]}
import React, { Component } from 'react';
import { AppRegistry } from 'react-native';
import { Button } from 'antd-mobile-rn';
class HelloWorldApp extends Component {
render() {
return <Button>Start</Button>;
}
}
AppRegistry.registerComponent('HelloWorldApp', () => HelloWorldApp);
项目中常用的封装都放在 src/common
文件夹下面:
-
global.js
:全局变量方法,一般用来设置全局的方法,具体的详情可以查看global.js
内部注释。-
系统判断
-
屏幕宽高
-
主题设置
-
图片初始化
-
-
FontSize.js
:基于屏幕分辨率封装的字体适配方法 -
Tool.js
:封装常用的属性方法,比如说判断是否登录,或者其他的方法 -
px2dp.js
: 在这个方法中,提供了用来做安卓,iOS换算px的方法,使用方法:width:px2dp(100) -
Config.js
:配置文件,可以用来配置请求网址,配置表等等 -
SetTheme.js
:更改主题,teaset
提供了设置主题和切换主题的能力,但有些时候,有一些颜色需要再手动调整,所以创建了这个文件,通过在里面配置颜色,并在项目的入口中引入,就可以直接使用Theme.backgroundColor
的方式调用颜色了。 -
Request.js
:基于react-native-fetch-blob
封装的网络请求方法 -
Images.js
:在src/images
目录下的index.js
,统一管理项目图片资源
-
run-ios失败的时候,可以需要删除ios/build文件夹重新编译
-
项目出现诸多异常的时候,直接执行. reset.sh会自动清理缓存并重装,而后执行命令即可
- 安装完毕若有异常,则需要执行rnpm link/react-native link