gnipbao / iblog

🖋 iblog=issues blog 欢迎订阅(watch👀) 收藏(star)
https://github.com/gnipbao/iblog/issues
211 stars 27 forks source link

uni-app项目架构设计思路整理 #51

Open gnipbao opened 2 months ago

gnipbao commented 2 months ago

目录模块划分

/my-uni-app
|--/components          # 组件目录,存放所有可复用的Vue组件
|   |--/base             # 基础组件,如Button、Input等
|   |--/common           # 通用组件,可能包含多个页面共用的组件
|   |--/page             # 页面特定组件,针对特定页面的组件
|--/pages               # 页面目录,存放页面相关的Vue文件
|   |--/index           # 首页模块
|   |   |--index.vue     # 首页
|   |--/user            # 用户模块
|   |   |--login.vue     # 登录页
|   |--...              # 其他页面模块
|--/static              # 静态资源目录,存放图片、图标等静态文件
|--/api                 # API请求目录,封装网络请求和服务
|   |--/user.js         # 用户相关API
|   |--/item.js         # 商品相关API
|--/store               # Vuex状态管理目录
|   |--index.js         # Vuex入口文件
|   |--modules          # Vuex模块
|--/utils               # 工具类和帮助函数
|--/unpackage            # 未打包的源码,HBuilderX特有
|--/wxcomponents         # 微信小程序组件目录,存放小程序特有的组件
|--/nvue                # nvue目录,存放App端的原生渲染页面
|--/uni_modules          # 第三方插件或自定义模块
|--/manifest.json       # 应用配置文件
|--/pages.json          # 页面配置文件
|---app.vue             # 应用配置文件
|---main.js              # Vue初始化入口文件
|---config.js            # 项目配置文件,如API基础路径等
|---icons                # 字体图标或SVG图标目录
|--/package.json         # npm包配置文件

说明:

组件复用

基础组件

组件库

自建组件库

开源组件库

业务组件

主要是对内部业务场景的封装

通用能力封装

请求模块化封装

无感刷新Token

常见功能场景封装

常用工具库封装

公共配置文件封装

兼容性问题解决

其他功能封装(看具体端场景)

整体封装原则:

优先看官网有没有提供好用的插件比如:uni-pay如果官方插件不满足需要可以自己根据情况来封装

常见页面复用

列表页面

模版页面

用来提供一些基础页面模版方便快速进行二次开发

特殊领域全套模版页

用来给某一个业务方向(商城、金融、医疗等)提供常见场景页面方便快速集成二次开发