小七ing
小七ing
  • 发布:2026-10-23 18:15
  • 更新:2026-10-23 18:16
  • 阅读:272

【报Bug】ios设置繁体,然后小程序翻译成繁体,uni.showActionSheet会报错

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Windows

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

HBuilderX类型: 正式

HBuilderX版本号: 5.07

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

基础库版本号: 3.14.3

项目创建方式: HBuilderX

操作步骤:

ios设置繁体,然后小程序翻译成繁体,uni.showActionSheet会报错,wx.showActionSheet这个方法正常,
这是小程序报错:
SystemError (appServiceSDKScriptError)
undefined is not an object (evaluating 'a[e].replaceAll')
TypeError: undefined is not an object (evaluating 'a[e].replaceAll')

预期结果:

不报错,和wx.showActionSheet这个方法正常可以用才行

实际结果:

uni.showActionSheet会报错
SystemError (appServiceSDKScriptError)
undefined is not an object (evaluating 'a[e].replaceAll')
TypeError: undefined is not an object (evaluating 'a[e].replaceAll')

bug描述:

ios设置繁体,然后小程序翻译成繁体,uni.showActionSheet会报错,wx.showActionSheet这个方法正常,
这是小程序报错:
SystemError (appServiceSDKScriptError)
undefined is not an object (evaluating 'a[e].replaceAll')
TypeError: undefined is not an object (evaluating 'a[e].replaceAll')

2026-10-23 18:15 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

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

您好,感谢您的 bug 反馈。以下是从官方评审角度对该反馈的分析意见:

一、反馈内容完整性分析

  1. BUG 描述:基本清晰,说明了触发条件(iOS 系统设置为繁体 + 小程序翻译成繁体)和现象(uni.showActionSheet 报错、wx.showActionSheet 正常)。但需要补充说明“小程序翻译成繁体”的具体方式:是通过 uni.setLocale 设置应用语言,还是项目内使用 i18n 国际化方案,还是依赖微信小程序自身的语言环境?这会直接影响问题定位。

  2. 代码示例:缺失。反馈中没有提供 uni.showActionSheet 的调用代码,无法确认传入的参数(如 itemList、title、itemColor 等,其中 itemList 为必填项,微信小程序端数组长度最大为 6)。建议提供一个最小可运行的复现 demo,包含完整的调用参数。

  3. 复现步骤:不够详细。目前仅描述“ios设置繁体,然后小程序翻译成繁体”,缺少以下关键信息,官方人员难以按步骤成功复现:

    • iOS 设备机型和系统版本
    • 项目是 Vue2 还是 Vue3
    • 微信小程序基础库版本号
    • uni.showActionSheet 调用的具体参数内容(itemList 中是否包含繁体文本等)
  4. 预期结果:合理。uni.showActionSheet 作为封装 API,与 wx.showActionSheet 表现一致是合理预期。

  5. 实际结果:报错信息明确(undefined is not an object (evaluating 'a[e].replaceAll')),但建议补充完整的报错调用堆栈,便于定位框架内部触发位置。

  6. 分类信息:不完整。目前仅包含 PC 开发环境(Windows 10)和 HBuilderX 版本(5.07 正式版),缺少 Vue 版本、手机 OS 系统版本、手机设备机型、微信基础库版本号等关键信息。

另外提醒:本回复无法识别附件,如有补充信息请直接以文字形式描述。

二、bug 是否成立的分析

从 ISSUE 系统中检索到一条高度相关的历史记录(ISSUE 系统):language未判断空值,小程序使用报错

该 ISSUE 的情况:

  • HBuilderX 4.36 版本报告,报错为 TypeError: Cannot read property 'replace' of undefined,同样发生在微信小程序环境,与语言(language)处理相关
  • 官方修复方式为对 language 增加空值判断(language?.replace(/_/g, '-'))
  • 该 ISSUE 状态为“已发版”,官方确认 HBuilderX 正式版 4.44 上 vue3、x 项目已无此问题,vue2 项目的问题也在后续版本修复

您反馈的报错 a[e].replaceAll 与该 ISSUE 中 language?.replace 的问题特征相似:都是与语言相关的字符串处理在微信小程序环境报 "undefined is not an object" 错误。但存在差异:

  • 您使用的 HBuilderX 5.07 正式版理论上已包含上述修复
  • 报错方法不同(replaceAll 与 replace),可能是同类问题的新变体,也可能是其他代码路径触发

因此该 bug 有成立的可能性,但目前信息不足以确认根因。建议补充以下信息以便进一步排查:

  1. 项目是 Vue2 还是 Vue3
  2. uni.showActionSheet 的完整调用代码(最小可运行 demo)
  3. iOS 设备机型、系统版本、微信基础库版本
  4. “小程序翻译成繁体”的具体实现方式
  5. 完整的报错调用堆栈

补充上述信息后,可前往 DCloud 问答社区 提交详细反馈并附上复现 demo,便于官方人员复现、定位和跟进修复。

内容为 AI 生成,仅供参考

要回复问题请先登录或注册