# 项目概述 这是一个基于 UniApp + Vue3 + uView-Plus 的微信小程序项目模板。它提供了一个基础的项目结构和一些常用的工具函数,方便快速开发微信小程序。 ## 技术栈 * **UniApp**: 跨平台开发框架,用于构建微信小程序。 * **Vue3**: 渐进式 JavaScript 框架,用于构建用户界面。 * **uView-Plus**: 基于 UniApp 的 UI 组件库。 * **z-paging**: 一个用于处理分页加载的组件库。 ## 目录结构 ``` . ├── api/ # 接口相关 │ └── request.js # 请求封装 ├── common/ # 公共资源 │ ├── styles/ # 全局样式 │ └── utils/ # 工具函数 ├── components/ # 公共组件 ├── uni_modules/ # uni-app 组件 ├── lib/ # 第三方库 │ └── luch-request/ # luch-request 网络请求库 ├── uview-plus/ # uView-Plus 组件库 ├── mixins/ # Vue 混入 ├── pages/ # 主包页面 ├── subPages/ # 分包页面 ├── App.vue # 应用入口 ├── main.js # 主入口文件 ├── pages.json # 页面配置 ├── manifest.json # 应用配置 ├── uni.scss # 全局样式变量 └── .env # 环境变量 ``` # 开发环境与运行 ## 环境要求 * Node.js (版本信息在 `.nvmdrc` 文件中指定) * npm 或 yarn ## 安装依赖 ```bash npm install ``` ## 运行项目 由于这是一个 UniApp 项目,通常需要使用 HBuilderX 或其他支持 UniApp 的 IDE 来运行和调试。具体的运行命令取决于你的开发环境。 ## 构建项目 同样,构建项目也需要使用 HBuilderX 或相应的 CLI 工具。 # 代码规范与开发约定 ## 样式 * 全局样式文件位于 `common/styles/` 目录下,包括 `common.css` 和 `normal.scss`。 * 样式规范应遵循项目中已有的风格。 ## 静态资源 * 所有静态资源需要使用环境变量 `VITE_ASSETSURL`。 ## 工具函数 (tool.js) `common/utils/tool.js` 文件提供了一系列常用的工具函数: * **提示与加载**: `alert`, `loading`, `hideLoading` * **页面跳转**: `navigateTo`, `redirectTo`, `reLaunch`, `switchTab`, `navigateBack` * **本地存储**: `storage`, `removeStorage`, `getStorageInfo` * **其他功能**: `copy` (复制文本), `saveImageToPhotos` (保存图片), `requestPayment` (微信支付), `upload` (文件上传) ## 网络请求 * 网络请求使用 `lib/luch-request` 库进行封装。 * 全局配置在 `api/request.js` 中定义,包括基础URL、请求头、SSL验证等。 * 包含请求和响应拦截器,用于处理通用逻辑(如错误提示、鉴权等)。 ## 组件 * 项目集成了 `uView-Plus` 和 `z-paging` 两个组件库,组件均以全局导入,可以直接使用。 * `uView-Plus` 组件的使用方式是 `u-icon`、`u-input`、`u-textarea`。 * 自定义组件应放在 `components/` 目录下。 ## 页面 * 页面配置在 `pages.json` 中管理。 * 主包页面放在 `pages/` 目录下,分包页面放在 `subPages/` 目录下。 * 页面的生命周期按需进行导入,如(`import { onLoad } from '@dcloudio/uni-app'`)。