React-Native : ‘^0.64.0’ 项目架构

项目场景:

这里介绍一下我自己从0-1的React-Native项目架构,细粒化的程度还行,主要我喜欢深度细粒化的项目,写起来很舒服。


package.json:
"dependencies": {
    "@react-native-async-storage/async-storage": "^1.15.5", // 本地缓存
    "@react-navigation/bottom-tabs": "^5.11.10",
    "@react-navigation/drawer": "^5.12.5",
    "@react-navigation/native": "^5.9.4", // 路由
    "@react-navigation/stack": "^5.14.4",
    "native-base": "^2.15.2", // UI 库
    "react": "17.0.1",
    "react-native": "0.64.0",
    "react-native-blob-util": "^0.13.7", // rn-fetch-blob 的一个分支 优化更好
    "react-native-screens": "^3.1.1",
    "react-native-splash-screen": "^3.2.0", // 启动页
    "react-native-svg": "^12.1.1",
    "react-native-vector-icons": "^8.1.0", // 图标库
    "react-native-webview": "^11.4.3",
  },

文件夹结构:
项目文件夹
1、api:存放后台接口
2、assets:静态文件
3、components:自定义组件、Hooks、layout之类的…
4、constants:顾名思义是常量
5、navigation:导航路由
6、pages\screens:UI页面
7、reducer:本意是想Hooks+Redux进行状态管理
8、styles:样式
9、utility:七七八八的帮助文件比如:大小屏幕尺寸适配、globalColor


此项目使用的是React : ^17.0,React-Native : ^0.64, react-navigation : ^5.x.

路由我习惯是:
嵌套路由
以 NavigationContainer 在 App.js 内包裹所有路由,以内再嵌套子模块路由,需要 Drawer 抽屉则注册 Drawer 并包裹底部导航栏 BottomTabNavigator,其余则以子模块路由 Stack 注册,其内部为 Screen。
ScreenStack
Stack 内则注册其子页 Screen.


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值