From cd39a9a65c94d00b1d38dd909ec5bb3b6a19b8a1 Mon Sep 17 00:00:00 2001 From: duanshuwen Date: Wed, 27 May 2026 19:00:08 +0800 Subject: [PATCH] chore: remove outdated component documentation and demo files Clean up the repository by deleting all old component-specific README files, prompt instruction docs, demo examples, and the Chinese TopNavBar usage guide to remove unused project assets. --- src/components/CommandWrapper/propmt.md | 12 - src/components/CreateServiceOrder/prompt.md | 25 -- src/components/FormCard/README.md | 473 -------------------- src/components/FormCard/demo.vue | 234 ---------- src/components/FormCard/propmt.md | 14 - src/components/ImageSwiper/README.md | 334 -------------- src/components/ImageSwiper/demo.vue | 244 ---------- src/components/ImageSwiper/prompt.md | 15 - src/components/ModuleTitle/prompt.md | 14 - src/components/ResponseIntro/prompt.md | 14 - src/components/ServiceTipsWord/prompt.md | 16 - src/components/Stepper/README.md | 72 --- src/components/Stepper/propmt.md | 12 - src/components/SumCard/propmt.md | 12 - src/components/TagsGroup/prompt.md | 14 - src/components/TopNavBar/README.md | 180 -------- src/components/TopNavBar/demo.vue | 142 ------ src/components/TopNavBar/使用指南.md | 298 ------------ 18 files changed, 2125 deletions(-) delete mode 100644 src/components/CommandWrapper/propmt.md delete mode 100644 src/components/CreateServiceOrder/prompt.md delete mode 100644 src/components/FormCard/README.md delete mode 100644 src/components/FormCard/demo.vue delete mode 100644 src/components/FormCard/propmt.md delete mode 100644 src/components/ImageSwiper/README.md delete mode 100644 src/components/ImageSwiper/demo.vue delete mode 100644 src/components/ImageSwiper/prompt.md delete mode 100644 src/components/ModuleTitle/prompt.md delete mode 100644 src/components/ResponseIntro/prompt.md delete mode 100644 src/components/ServiceTipsWord/prompt.md delete mode 100644 src/components/Stepper/README.md delete mode 100644 src/components/Stepper/propmt.md delete mode 100644 src/components/SumCard/propmt.md delete mode 100644 src/components/TagsGroup/prompt.md delete mode 100644 src/components/TopNavBar/README.md delete mode 100644 src/components/TopNavBar/demo.vue delete mode 100644 src/components/TopNavBar/使用指南.md diff --git a/src/components/CommandWrapper/propmt.md b/src/components/CommandWrapper/propmt.md deleted file mode 100644 index ad076dc..0000000 --- a/src/components/CommandWrapper/propmt.md +++ /dev/null @@ -1,12 +0,0 @@ -## 消息体指令组件 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、按照提供的图片高度还原交互设计 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.command-wrapper -3、可以使用 uniapp 内置的组件 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/CreateServiceOrder/prompt.md b/src/components/CreateServiceOrder/prompt.md deleted file mode 100644 index dbe2dd0..0000000 --- a/src/components/CreateServiceOrder/prompt.md +++ /dev/null @@ -1,25 +0,0 @@ -## 消息体组件信息 - -组件名称:消息体创建服务工单 -服务名称:加一台麻将机 -房间号:302 -服务时间:2025-09-12 12:00 -联系房客: -联系电话: -立即呼叫按钮 - -呼叫成功之后 -1、呼叫按钮变为两个按钮 查看工单和已完成,见图中的布局 -2、联系人和联系电话,仅展示,不能编辑 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、按照提供的图片高度还原交互设计 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.create-service-order -3、可以使用 uniapp 内置的组件 -4、联系房客/联系电话,需要用户自己填写 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/FormCard/README.md b/src/components/FormCard/README.md deleted file mode 100644 index a4bf1f2..0000000 --- a/src/components/FormCard/README.md +++ /dev/null @@ -1,473 +0,0 @@ -# FormCard 表单卡片组件 - -一个功能完整的表单卡片组件,支持姓名和手机号输入,具备数据验证和双向绑定功能。 - -## 功能特性 - -- 📝 **双向绑定**:支持 v-model 双向数据绑定 -- ✅ **数据验证**:内置手机号格式验证 -- 🎨 **自定义标题**:可配置游客标题文本 -- 🗑️ **删除功能**:支持删除操作,可配置显示/隐藏 -- 💫 **交互反馈**:输入框聚焦效果和错误状态提示 -- 📱 **响应式设计**:适配不同屏幕尺寸 -- 🎯 **事件支持**:完整的事件系统 -- ⚡ **性能优化**:使用计算属性优化渲染 - -## 基础用法 - -### 默认使用 - -```vue - - - -``` - -### 自定义标题 - -```vue - -``` - -### 隐藏删除图标 - -```vue - -``` - -### 多个表单卡片 - -```vue - - - -``` - -### 表单验证 - -```vue - - - -``` - -## API 文档 - -### Props - -| 参数 | 类型 | 默认值 | 说明 | -| -------------- | ------- | ------------------------- | ------------------------------------- | -| title | String | "游客1" | 表单卡片标题 | -| form | Object | `{ name: '', phone: '' }` | 表单数据对象,包含 name 和 phone 字段 | -| form.name | String | "" | 姓名值 | -| form.phone | String | "" | 手机号值 | -| showDeleteIcon | Boolean | true | 是否显示删除图标 | - -### Events - -| 事件名 | 参数 | 说明 | -| ------------ | --------------- | -------------------------------------- | -| update:name | (value: string) | 姓名值更新时触发,自动去除首尾空格 | -| update:phone | (value: string) | 手机号值更新时触发,自动过滤非数字字符 | -| delete | - | 点击删除图标时触发 | - -### Methods (通过 ref 调用) - -| 方法名 | 参数 | 返回值 | 说明 | -| ------------- | --------------- | ------ | ---------------------- | -| validateName | - | void | 手动触发姓名验证 | -| validatePhone | - | void | 手动触发手机号验证 | -| getNameError | (name: string) | string | 获取姓名验证错误信息 | -| getPhoneError | (phone: string) | string | 获取手机号验证错误信息 | - -### 数据验证 - -组件内置完整的表单验证: - -- **姓名验证**:不能为空,自动去除首尾空格 -- **手机号验证**:支持中国大陆手机号格式(1开头,第二位为3-9,总长度11位) -- **失焦验证**:只在输入框失去焦点时进行验证,避免输入干扰 -- **错误提示**:验证失败时显示错误信息,带有淡入动画效果 -- **视觉反馈**:输入框边框变红提示错误状态 -- **自动过滤**:手机号输入时自动过滤非数字字符 - -## 样式定制 - -### CSS 变量系统 - -组件使用 CSS 变量系统,支持主题定制: - -```scss -:root { - --form-primary-color: #00a6ff; // 主色调 - --form-error-color: #ff4d4f; // 错误色 - --form-text-color: #333; // 文本色 - --form-label-color: #86909c; // 标签色 - --form-border-color: #e5e8ef; // 边框色 - --form-input-border-color: #ddd; // 输入框边框色 - --form-bg-color: #fff; // 背景色 - --form-header-bg-color: rgba(25, 144, 255, 0.06); // 头部背景色 - --form-border-radius: 8px; // 圆角大小 - --form-transition: all 0.2s ease; // 过渡动画 -} -``` - -### 主要样式类 - -```scss -.form-wrapper { - // 表单容器,支持悬停效果和阴影 -} - -.form-header { - // 表单头部,包含标题和删除按钮 -} - -.form-title { - // 标题文本,支持文本溢出省略 -} - -.form-item { - // 表单项容器,支持分隔线 -} - -.form-input { - // 输入框,支持聚焦和错误状态 -} - -.form-error { - // 错误信息,带有淡入动画 -} -``` - -### 响应式设计 - -组件内置响应式支持,在小屏幕设备上自动调整: - -- 320px 以下设备优化布局 -- 自动调整字体大小和间距 -- 保持良好的可用性 - -### 自定义主题 - -通过覆盖 CSS 变量来自定义主题: - -```scss -// 自定义主题色 -:root { - --form-primary-color: #your-primary-color; - --form-error-color: #your-error-color; - --form-border-radius: 12px; -} - -// 或者针对特定组件 -.your-custom-form { - --form-primary-color: #your-primary-color; - --form-header-bg-color: rgba(your-color, 0.1); -} -``` - -## 高级用法 - -### 表单验证集成 - -```vue - - - -``` - -### 动态表单管理 - -```vue - - - -``` - -## 注意事项 - -1. **数据传递**:使用 `:form` 对象传递数据,包含 `name` 和 `phone` 字段 -2. **双向绑定**:通过 `@update:name` 和 `@update:phone` 事件进行双向绑定 -3. **验证机制**:只在失去焦点时进行验证,避免输入干扰 -4. **手机号验证**:仅支持中国大陆手机号格式验证(1开头,第二位3-9,总长度11位) -5. **自动处理**:手机号自动过滤非数字字符,姓名自动去除首尾空格 -6. **删除功能**:删除事件需要父组件处理具体逻辑 -7. **方法调用**:通过 `ref` 可调用组件内部的验证方法 -8. **兼容性**:支持微信小程序、H5、App等平台 - -## 更新日志 - -### v1.3.0 (2024-12-19) - -**性能与可维护性全面优化** - -- 🚀 **性能优化**:提取常量定义,优化计算属性逻辑 -- 🛠️ **代码重构**:添加完整的 JSDoc 注释和类型定义 -- 🎨 **样式升级**:使用 CSS 变量系统,支持主题定制 -- ✨ **功能增强**:手机号自动过滤非数字字符,姓名自动去除空格 -- 🎭 **UI 改进**:新增悬停效果、错误信息动画和阴影效果 -- 📱 **响应式设计**:优化小屏幕设备适配 -- 🔧 **开发体验**:添加 defineExpose 暴露验证方法,便于测试 -- 📝 **文档完善**:更新演示和使用说明 - -### v1.2.3 (2024-12-19) - -**优化验证行为** - -- 🎨 优化验证行为,移除实时验证 -- ✨ 姓名和手机号只在失去焦点时进行验证 -- 🔧 移除不必要的 watch 监听器 -- 📝 更新文档和演示说明 -- ⚡ 提升组件性能和用户体验 - -### v1.2.2 (2024-12-19) - -**新增姓名验证功能** - -- ✨ 新增姓名非空验证功能 -- 👤 姓名为空时显示"请输入姓名"提示 -- 🔄 支持姓名实时验证,输入内容时错误信息自动隐藏 -- 🎯 完善表单验证体系,提升数据完整性 -- 💫 优化用户体验,提供友好的输入提示 - -### v1.2.1 (2024-12-19) - -**优化手机号验证功能** - -- 🐛 修复validatePhone方法中props引用错误的问题 -- ✨ 新增手机号实时验证功能 -- 🔄 输入正确手机号时错误信息自动隐藏 -- 📱 优化用户输入体验,提供即时反馈 -- 🎯 完善demo页面,增加功能说明 - -### v1.2.0 (2024-12-19) - -**新增删除功能** - -- ✨ 支持删除表单卡片 -- 🎯 可配置删除图标显示/隐藏 -- 🔄 完善事件系统,支持delete事件 -- 💫 优化用户交互体验 - -### v2.0.0 - -- ✨ 重构组件,支持 props 传值和双向绑定 -- ✨ 新增 `title` 属性,支持自定义标题 -- ✨ 新增 `showDeleteIcon` 属性,控制删除图标显示 -- ✨ 新增完整的事件系统(update:name, update:phone, delete) -- 🎨 优化样式,新增错误状态和交互效果 -- 🔧 改进手机号验证逻辑 -- 📝 新增完整的文档和演示示例 - -### v1.0.0 - -- 🎉 初始版本发布 -- ✨ 基础表单功能 -- ✨ 手机号验证 -- ✨ 基础样式 - -## 技术栈 - -- Vue 3 Composition API -- SCSS -- uni-app - -## 浏览器支持 - -- 微信小程序 -- H5 (Chrome, Firefox, Safari, Edge) -- App (iOS, Android) - -## 许可证 - -MIT License diff --git a/src/components/FormCard/demo.vue b/src/components/FormCard/demo.vue deleted file mode 100644 index ff80f43..0000000 --- a/src/components/FormCard/demo.vue +++ /dev/null @@ -1,234 +0,0 @@ - - - - - diff --git a/src/components/FormCard/propmt.md b/src/components/FormCard/propmt.md deleted file mode 100644 index ffc14ac..0000000 --- a/src/components/FormCard/propmt.md +++ /dev/null @@ -1,14 +0,0 @@ -## 表单组件 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、参考图片,高度还原交互设计,完成组件封装 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.form-wrapper -3、可以使用 uniapp 内置的组件 -4、姓名、手机号,需要用户自己填写 -5、验证手机号格式是否正确 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/ImageSwiper/README.md b/src/components/ImageSwiper/README.md deleted file mode 100644 index 36f5b45..0000000 --- a/src/components/ImageSwiper/README.md +++ /dev/null @@ -1,334 +0,0 @@ -# ImageSwiper 轮播图组件 - -一个功能丰富的轮播图组件,支持自定义圆角、缩略图导航和图片描述。 - -## 功能特性 - -- 🎨 **可配置圆角**:支持数字(px)或字符串形式的圆角设置 -- 📏 **可配置高度**:支持数字(px)或字符串形式的高度设置 -- 🖼️ **缩略图导航**:底部缩略图快速切换,支持左右滑动 -- 👁️ **缩略图控制**:可配置显示或隐藏缩略图 -- 📱 **响应式设计**:适配不同屏幕尺寸 -- 🎯 **自定义数据**:支持传入自定义图片数据 -- 📊 **进度指示器**:显示当前图片位置 -- 🎭 **选中状态**:缩略图选中时高亮显示,带缩放动画 -- 🔄 **自动滚动**:缩略图自动滚动到可视区域 -- ⚡ **性能优化**:使用计算属性优化渲染 - -## 基础用法 - -### 默认使用 - -```vue - - - -``` - -### 自定义圆角 - -```vue - -``` - -### 自定义高度 - -```vue - -``` - -### 隐藏缩略图 - -```vue - -``` - -### 自定义图片数据 - -```vue - - - -``` - -### 缩略图滑动功能 - -组件支持缩略图左右滑动,当图片数量较多时,缩略图会自动滚动到可视区域: - -```vue - - - -``` - -## API 文档 - -### Props - -| 参数 | 类型 | 默认值 | 说明 | -| -------------- | ---------------- | ------ | -------------------------------- | -| borderRadius | Number \| String | 8 | 轮播图圆角大小,数字时单位为px | -| height | Number \| String | 200 | 轮播图高度,数字时单位为px | -| showThumbnails | Boolean | true | 是否显示缩略图 | -| images | Array | [] | 图片数据数组,为空时使用默认数据 | - -### images 数组结构 - -```typescript -interface ImageItem { - photoUrl: string; // 图片URL - photoName: string; // 图片名称/描述 -} -``` - -## 样式定制 - -### 圆角配置示例 - -```vue - - - - - - - - - - - - - - -``` - -### 动态圆角控制 - -```vue - - - -``` - -## 高级用法 - -### 响应式配置 - -```vue - - - -``` - -### 动态控制示例 - -```vue - - - -``` - -### 主题适配 - -```vue - - - -``` - -## 注意事项 - -1. **圆角单位**:数字类型自动添加px单位,字符串类型直接使用 -2. **高度单位**:数字类型自动添加px单位,字符串类型直接使用(支持vh、rem等) -3. **缩略图显示**:当设置 `showThumbnails` 为 `false` 时,缩略图完全隐藏 -4. **图片比例**:建议使用相同比例的图片以获得最佳显示效果 -5. **性能优化**:大量图片时建议使用懒加载 -6. **兼容性**:支持微信小程序、H5、App等平台 - -## 更新日志 - -### v1.3.0 - -- ✨ 新增 `height` 属性,支持自定义轮播图高度 -- ✨ 新增 `showThumbnails` 属性,支持隐藏缩略图 -- 🎨 优化样式系统,移除硬编码高度 -- 🔧 改进计算属性,支持动态高度和缩略图控制 -- 📝 更新文档和演示示例,新增多个高级用法示例 -- 🎯 增强组件灵活性,适应更多使用场景 - -### v1.2.0 - -- ✨ 新增缩略图左右滑动功能 -- ✨ 新增缩略图选中状态高亮显示 -- ✨ 新增缩略图自动滚动到可视区域 -- 🎨 优化缩略图动画效果和交互体验 -- 🔧 改进主轮播图与缩略图的联动机制 -- 📝 更新文档和演示示例 - -### v1.1.0 - -- ✨ 新增 `borderRadius` 属性,支持自定义圆角 -- ✨ 新增 `images` 属性,支持自定义图片数据 -- 🔧 优化组件结构,使用计算属性提升性能 -- 📝 完善文档和示例 - -### v1.0.0 - -- 🎉 初始版本发布 -- ✨ 基础轮播图功能 -- ✨ 缩略图导航 -- ✨ 进度指示器 - -## 技术栈 - -- Vue 3 Composition API -- SCSS -- uni-app - -## 浏览器支持 - -- 微信小程序 -- H5 (Chrome, Firefox, Safari, Edge) -- App (iOS, Android) - -## 许可证 - -MIT License diff --git a/src/components/ImageSwiper/demo.vue b/src/components/ImageSwiper/demo.vue deleted file mode 100644 index a0461cf..0000000 --- a/src/components/ImageSwiper/demo.vue +++ /dev/null @@ -1,244 +0,0 @@ - - - - - diff --git a/src/components/ImageSwiper/prompt.md b/src/components/ImageSwiper/prompt.md deleted file mode 100644 index 62dc411..0000000 --- a/src/components/ImageSwiper/prompt.md +++ /dev/null @@ -1,15 +0,0 @@ -## 图片详情组件 - -组件名称:图片详情组件 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、按照提供的图片 100%还原交互设计 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.image-swiper -3、可以使用 uniapp swiper 内置的组件 -4、可以使用网络图片地址 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/ModuleTitle/prompt.md b/src/components/ModuleTitle/prompt.md deleted file mode 100644 index c906bbc..0000000 --- a/src/components/ModuleTitle/prompt.md +++ /dev/null @@ -1,14 +0,0 @@ -## 图片详情组件 - -组件名称:模块标题组件 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、按照提供的图片 100%还原交互设计 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.module-title -3、可以使用 uniapp 内置的组件 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/ResponseIntro/prompt.md b/src/components/ResponseIntro/prompt.md deleted file mode 100644 index e0f2ea6..0000000 --- a/src/components/ResponseIntro/prompt.md +++ /dev/null @@ -1,14 +0,0 @@ -## 消息响应体文本介绍组件 - -组件名称:消息响应体文本介绍组件 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、参考图片,还原交互设计 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.response-intro-text -3、可以使用 uniapp 内置的组件 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/ServiceTipsWord/prompt.md b/src/components/ServiceTipsWord/prompt.md deleted file mode 100644 index 5d3fa49..0000000 --- a/src/components/ServiceTipsWord/prompt.md +++ /dev/null @@ -1,16 +0,0 @@ -## 消息体提示词组件 - -组件名称:消息体提示词组件 -帮我加一张床、房间热水不够热、帮我加一台麻将机 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、按照提供的图片高度还原交互设计 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.service-prompt -3、可以使用 uniapp 内置的组件 -4、帮忙加一张床、房间热水不够热、帮忙加一台麻将机有点击交互 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/Stepper/README.md b/src/components/Stepper/README.md deleted file mode 100644 index 2411ffc..0000000 --- a/src/components/Stepper/README.md +++ /dev/null @@ -1,72 +0,0 @@ -# Stepper 数字步进器组件 - -一个简洁易用的数字步进器组件,支持增减操作和数值范围限制。 - -## 功能特性 - -- ✨ **双向数据绑定**:支持 v-model 语法糖 -- 🔢 **数值范围控制**:可设置最小值和最大值 -- 🎯 **响应式更新**:实时响应外部数值变化 -- 🎨 **简洁UI设计**:使用 uni-icons 图标,界面清爽 -- 📱 **移动端适配**:完美适配各种屏幕尺寸 - -## 使用方法 - -### 基础用法 - -```vue - - - -``` - -### 设置数值范围 - -```vue - -``` - -## API - -### Props - -| 参数 | 类型 | 默认值 | 说明 | -|------|------|--------|------| -| modelValue | Number | 1 | 当前数值,支持 v-model | -| min | Number | 1 | 最小值 | -| max | Number | 100 | 最大值 | - -### Events - -| 事件名 | 说明 | 回调参数 | -|--------|------|----------| -| update:modelValue | 数值变化时触发 | (value: number) | - -## 更新日志 - -### v1.1.0 (2024-12-19) -**修复响应性问题** -- 🐛 修复组件不响应外部 modelValue 变化的问题 -- 🔄 添加 watch 监听器,确保实时同步外部值变化 -- ✨ 提升组件响应性和数据同步准确性 -- 🎯 完善与父组件的双向数据绑定 - -### v1.0.0 -**初始版本** -- ✨ 基础数字步进器功能 -- 🔢 支持数值范围控制 -- 🎨 简洁的UI设计 -- 📱 移动端适配 \ No newline at end of file diff --git a/src/components/Stepper/propmt.md b/src/components/Stepper/propmt.md deleted file mode 100644 index efbfc76..0000000 --- a/src/components/Stepper/propmt.md +++ /dev/null @@ -1,12 +0,0 @@ -## 步进器组件 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、参考图片,高度还原交互设计,完成组件封装 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.stepper-wrapper -3、可以使用 uniapp 内置的组件 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/SumCard/propmt.md b/src/components/SumCard/propmt.md deleted file mode 100644 index 095fcf5..0000000 --- a/src/components/SumCard/propmt.md +++ /dev/null @@ -1,12 +0,0 @@ -## 价格组件 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、参考图片,高度还原交互设计,完成组件封装 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.sum-wrapper -3、可以使用 uniapp 内置的组件 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/TagsGroup/prompt.md b/src/components/TagsGroup/prompt.md deleted file mode 100644 index ff73993..0000000 --- a/src/components/TagsGroup/prompt.md +++ /dev/null @@ -1,14 +0,0 @@ -## 标签组件 - -组件名称:标签组件 - -## 提示词: - -使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下: -1、按照提供的图片 100%还原交互设计 -2、要求布局样式结构简洁明了,class 命名请按照模块名称来命名,例如:.tags-group -3、可以使用 uniapp 内置的组件 - -## 备注 - -仅供学习、交流使用,请勿用于商业用途。 diff --git a/src/components/TopNavBar/README.md b/src/components/TopNavBar/README.md deleted file mode 100644 index 679f3d7..0000000 --- a/src/components/TopNavBar/README.md +++ /dev/null @@ -1,180 +0,0 @@ -# TopNavBar 顶部导航栏组件 - -一个功能完整的顶部导航栏组件,支持固定定位、自定义样式和插槽内容。 - -## 功能特性 - -- ✅ 支持固定在页面顶部(可配置) -- ✅ 自动适配状态栏高度 -- ✅ 支持自定义标题和颜色 -- ✅ 支持插槽自定义内容 -- ✅ 内置返回按钮功能 -- ✅ 响应式设计 -- ✅ 深色模式支持 -- ✅ 安全区域适配 - -## 基础用法 - -### 简单使用 - -```vue - - - -``` - -### 固定在顶部 - -```vue - -``` - -### 自定义样式 - -```vue - -``` - -### 标题对齐方式 - -```vue - -``` - -### 使用插槽 - -```vue - -``` - -## API - -### Props - -| 参数 | 类型 | 默认值 | 说明 | -| --------------- | ------- | --------- | -------------------------------------- | -| title | String | '' | 导航栏标题 | -| fixed | Boolean | false | 是否固定在页面顶部 | -| showBack | Boolean | true | 是否显示返回按钮 | -| backgroundColor | String | '#ffffff' | 背景颜色 | -| titleColor | String | '#333333' | 标题文字颜色 | -| backIconColor | String | '#333333' | 返回按钮图标颜色 | -| hideStatusBar | Boolean | false | 是否隐藏状态栏占位 | -| zIndex | Number | 999 | 层级索引 | -| titleAlign | String | 'center' | 标题对齐方式,可选值:'center'、'left' | - -### Events - -| 事件名 | 说明 | 参数 | -| ------ | ------------------ | ---- | -| back | 点击返回按钮时触发 | - | - -### Slots - -| 插槽名 | 说明 | -| ------ | -------------- | -| title | 自定义标题内容 | -| right | 自定义右侧内容 | - -## 使用示例 - -### 订单列表页面 - -```vue - -``` - -### 商品详情页面 - -```vue - - - -``` - -## 注意事项 - -1. **固定定位使用**:当设置 `fixed="true"` 时,组件会固定在页面顶部,此时需要为页面内容添加适当的顶部间距。 - -2. **状态栏适配**:组件会自动获取系统状态栏高度并进行适配,无需手动处理。 - -3. **返回按钮**:默认点击返回按钮会执行 `uni.navigateBack()`,如果需要自定义返回逻辑,请监听 `@back` 事件。 - -4. **样式覆盖**:如需自定义样式,建议通过 props 传入颜色值,或在父组件中使用深度选择器覆盖样式。 - -5. **插槽使用**:title 插槽会完全替换默认的标题显示,right 插槽用于添加右侧操作按钮。 - -## 更新日志 - -### v1.0.0 - -- 初始版本发布 -- 支持基础导航栏功能 -- 支持固定定位配置 -- 支持自定义样式和插槽 diff --git a/src/components/TopNavBar/demo.vue b/src/components/TopNavBar/demo.vue deleted file mode 100644 index aec40d1..0000000 --- a/src/components/TopNavBar/demo.vue +++ /dev/null @@ -1,142 +0,0 @@ - - - - - diff --git a/src/components/TopNavBar/使用指南.md b/src/components/TopNavBar/使用指南.md deleted file mode 100644 index ab692aa..0000000 --- a/src/components/TopNavBar/使用指南.md +++ /dev/null @@ -1,298 +0,0 @@ -# TopNavBar 组件使用指南 - -## 组件概述 - -TopNavBar 是一个功能完整的顶部导航栏组件,专为 uni-app 项目设计。该组件支持固定定位、自定义样式、插槽内容等功能,可以满足大部分页面的导航需求。 - -## 核心特性 - -### 1. 可配置固定定位 - -- **默认行为**: 组件默认不固定,跟随页面滚动 -- **固定模式**: 设置 `fixed="true"` 可将导航栏固定在页面顶部 -- **自动适配**: 固定模式下自动处理状态栏高度和安全区域 - -### 2. 智能状态栏适配 - -- 自动获取系统状态栏高度 -- 支持不同平台的导航栏高度适配(iOS: 44px, Android: 48px) -- 可选择隐藏状态栏占位区域 - -### 3. 灵活的自定义选项 - -- 支持自定义背景色、标题色、图标色 -- 可控制返回按钮显示/隐藏 -- 支持自定义 z-index 层级 -- 支持标题对齐方式配置(居中/左对齐) - -## 快速开始 - -### 基础使用 - -```vue - - -``` - -### 固定在顶部 - -```vue - - - - -``` - -### 自定义样式 - -```vue - - - - - - - - - - - -``` - -## 高级用法 - -### 使用插槽自定义内容 - -```vue - - - -``` - -### 监听返回事件 - -```vue - - - -``` - -## 实际应用场景 - -### 1. 商品详情页 - -```vue - -``` - -### 2. 订单列表页 - -```vue - -``` - -### 3. 聊天页面 - -```vue - -``` - -## 最佳实践 - -### 1. 固定导航栏的页面布局 - -```scss -// 推荐的页面结构 -.page-container { - .page-content { - // 方法1: 使用 padding-top - padding-top: calc(var(--status-bar-height, 44px) + 44px); - - // 方法2: 使用 margin-top - // margin-top: calc(var(--status-bar-height, 44px) + 44px); - } -} -``` - -### 2. 响应式设计 - -```scss -// 适配不同屏幕尺寸 -@media screen and (max-width: 375px) { - .page-content { - padding-top: calc(var(--status-bar-height, 44px) + 40px); - } -} -``` - -### 3. 主题适配 - -```vue - - - -``` - -## 注意事项 - -1. **固定定位的性能考虑**: 固定导航栏会创建新的层叠上下文,在复杂页面中可能影响性能 - -2. **状态栏适配**: 在不同设备上状态栏高度可能不同,组件会自动处理,但建议在测试时验证各种设备 - -3. **插槽内容**: 使用插槽时注意内容的响应式设计,确保在不同屏幕尺寸下都能正常显示 - -4. **z-index 管理**: 如果页面中有其他固定定位元素,注意调整 z-index 避免层级冲突 - -5. **返回按钮**: 默认返回行为是 `uni.navigateBack()`,如需自定义请监听 `@back` 事件 - -## 故障排除 - -### 常见问题 - -**Q: 固定导航栏下的内容被遮挡了?** -A: 需要为页面内容添加顶部间距,参考上面的最佳实践。 - -**Q: 在某些设备上状态栏高度不正确?** -A: 组件会自动获取状态栏高度,如果仍有问题,可以手动设置 `hideStatusBar="true"` 并自行处理。 - -**Q: 自定义颜色不生效?** -A: 确保传入的颜色值格式正确,支持 hex、rgb、rgba 等标准 CSS 颜色格式。 - -**Q: 插槽内容显示异常?** -A: 检查插槽内容的样式,确保没有影响导航栏布局的 CSS 属性。