apple a06e36d81f first commit 4 روز پیش
..
README.md a06e36d81f first commit 4 روز پیش
html-template.html a06e36d81f first commit 4 روز پیش
test.html a06e36d81f first commit 4 روز پیش
test1.html a06e36d81f first commit 4 روز پیش
test2.html a06e36d81f first commit 4 روز پیش
upload-image-demo.html a06e36d81f first commit 4 روز پیش

README.md

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上传功能的兼容性
  • 各种原生功能的调用
  • 页面跳转和数据传递

这些示例为正式业务开发提供了完整的技术基础。