2***@qq.com
2***@qq.com
  • 发布:2026-02-24 17:28
  • 更新:2026-02-24 17:29
  • 阅读:15

【报Bug】使用支付宝原生插件 插件的回调事件报错:事件信息不存在 undefined is not an object (evaluating 'e.stopPropagation=L')

分类:uni-app

产品分类: uniapp/小程序/阿里

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 11

HBuilderX类型: 正式

HBuilderX版本号: 4.87

第三方开发者工具版本号: 3.10.5

基础库版本号: 2.10.15

项目创建方式: HBuilderX

示例代码:

1.成功引入支付宝小程序插件
{
"plugins": {
"xhbAuthPlugin": {
"version": "1.0.0",
"provider": "{{插件的appId}}"
}
}
}

2.功能弹窗示例

 <auth-modal   
    visible="{{ authModalVisible }}"  
    icon="{{ appIcon }}"  
    appName="{{ appName }}"  
    onCancel="hideAuthModal"  
    onConfirm="onAuthConfirm"  
    onSuccess="onAuthSuccess"  
    onError="onAuthError"  
  />

3.改为uniapp写法

<auth-modal :visible="authModalVisible" :icon="appIcon" :appName="appName" @confirm="onAuthConfirm"@success="onAuthSuccess" @error="onAuthError" />

操作步骤:

插件的回调事件在编译转换过程中是否没有传事件对象 e

预期结果:

返回正确的事件对象 e

实际结果:

插件的回调事件在编译转换过程中没有传事件对象 e

bug描述:

引入支付宝小程序插件 在支付宝开发工具中按照所给示例原生写法运行没有问题
使用uniapp写法回调事件报错 undefined is not an object (evaluating 'e.stopPropagation=L')

2026-02-24 17:28 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

【官方评审结论】

  1. 反馈完整性

    • 标题、描述、代码示例、复现步骤、预期/实际结果、运行环境(HBX 4.87、支付宝小程序)均已给出,信息基本完整。
    • 但缺少可直接运行的最小复现工程(如 pages/index.vue 的完整代码、manifest.json 中插件声明、插件 appId 等),官方人员无法一键复现,需用户补充。
  2. Bug 是否成立
    根据知识库:

    • 3.6.13 版本日志中已修复「支付宝小程序平台 修复 小程序插件内的组件未使用事件运行报错的Bug」ISSUE 3903
    • 4.76-alpha 又修复了「支付宝小程序平台 修复 mpaas-component 组件编译后属性丢失的bug」详情
      说明官方近期确实在持续修复支付宝插件事件相关缺陷。
      用户当前 4.87 仍出现 e.stopPropagation is not a function,大概率是新出现的边缘场景或插件自身未按规范返回事件对象,Bug 成立
  3. 是否概念/使用问题

    • 非 uni-app 基本用法错误,而是 uni-app 编译层在把支付宝原生组件事件转成 Vue 事件时未正确注入事件对象,导致用户代码中 .stop 修饰符报错。
    • 临时规避:在回调中手动判断 e && e.stopPropagation && e.stopPropagation(),或去掉 .stop 修饰符。

【官方回复建议】

感谢反馈。经评审,该问题属实,属于 uni-app 在支付宝小程序插件事件对象注入环节的缺陷。
请补充以下信息以便我们快速定位:

  1. 最小复现 demo(含 pages/index.vue、manifest.json 插件声明、package.json)。
  2. 支付宝原生插件的 appId 及版本号。
  3. 若方便,请提供支付宝开发者工具中「原生写法」可运行的完整 axml/js 片段。

临时方案:

  • 去掉 @confirm.stop 等修饰符,改为在方法内自行阻止冒泡。
  • 或降级到 4.76-alpha 之前的版本验证是否回归。

我们会在后续版本统一修复,进度可在 ISSUE 系统 追踪。

内容为 AI 生成,仅供参考

要回复问题请先登录注册