# H5与小程序通信示例 这个文件夹包含了H5页面与小程序通信的完整示例。 ## 📁 文件说明 ### 页面文件 - `test.html` - 主测试页面,包含所有通信功能 - `test1.html` - 简单跳转页面示例 - `test2.html` - 表单页面示例(包含日志功能) ### 工具库 - `../js/utils/h5-bridge.js` - H5与小程序通信工具函数库 ## 🎯 功能演示 ### test.html - 主要功能 - 📷 **扫码** - 调用小程序原生扫码功能 - 🖼️ **选择图片** - 调用小程序原生图片选择 - 📤 **H5图片上传** - 纯H5实现的图片上传 - 📎 **H5附件上传** - 纯H5实现的文件上传 - 📞 **拨打电话** - 调用小程序拨号功能 - 💾 **存储操作** - 小程序本地存储读写 - 🔙 **返回小程序** - 智能返回功能 ### test1.html - 页面跳转 - 简单的页面间跳转示例 - 演示不需要结果处理的场景 ### test2.html - 表单应用 - 完整的表单页面示例 - 扫码结果填入表单 - 图片选择添加到表单 - 表单数据持久化 - 操作日志记录 ## 🔧 技术特点 ### 通信机制 - 使用中央控制器模式 - 支持数据双向传递 - 完整的错误处理 ### 两种上传方式 1. **小程序原生上传** - 调用小程序API,需要页面跳转 2. **H5原生上传** - 纯前端实现,无需跳转,体验更好 ### 函数库设计 - 简单的函数调用,无需类初始化 - 统一的错误处理 - 灵活的回调机制 ## 🚀 使用方法 1. 在小程序中配置webview页面 2. 引入h5-bridge.js工具库 3. 调用相应的通信函数 4. 在handleResult中处理返回结果 ## 📱 测试建议 建议在真实的微信小程序环境中测试: - H5上传功能的兼容性 - 各种原生功能的调用 - 页面跳转和数据传递 这些示例为正式业务开发提供了完整的技术基础。