- 发布:2026-08-03 16:22
- 更新:2026-08-03 16:23
- 阅读:36
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 11
HBuilderX类型: 正式
HBuilderX版本号: 5.15
手机系统: 全部
手机厂商: 华为
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
测试过的手机:
操作步骤:
复现步骤
- 项目
uni_modules/<插件>/uniCloud/cloudfunctions/<云函数>/package.json 中 cloudfunction-config 含 "runtime": "Nodejs16"
- 执行:
cli cloud functions --upload cloudfunction --prj 项目名 --provider aliyun --name <云函数名> --unimod <插件名>
- 报错
Cannot read properties of undefined (reading 'toLowerCase')
错误堆栈
TypeError: Cannot read properties of undefined (reading 'toLowerCase')
at D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:137141
at a (D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:113511)
at yx.<anonymous> (D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:1380186)
at a (D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:1362214)
at yx.uploadCloudFunction (D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:1380660)
Hr 返回字符串,但调用处却将其当作对象访问 .runtime 属性,导致 undefined.toLowerCase() 抛错。
复现步骤
- 项目
uni_modules/<插件>/uniCloud/cloudfunctions/<云函数>/package.json中cloudfunction-config含"runtime": "Nodejs16" - 执行:
cli cloud functions --upload cloudfunction --prj 项目名 --provider aliyun --name <云函数名> --unimod <插件名> - 报错
Cannot read properties of undefined (reading 'toLowerCase')
错误堆栈
TypeError: Cannot read properties of undefined (reading 'toLowerCase')
at D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:137141
at a (D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:113511)
at yx.<anonymous> (D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:1380186)
at a (D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:1362214)
at yx.uploadCloudFunction (D:\HBuilderX2\HBuilderX\plugins\unicloud\manager\index.js:1:1380660)
Hr 返回字符串,但调用处却将其当作对象访问 .runtime 属性,导致 undefined.toLowerCase() 抛错。
预期结果:
期望行为
- 有
runtime 字段的云函数也应能正常上传;或
- 修正为
i.toLowerCase()(对字符串取小写),并正确兼容运行时名匹配。
期望行为
- 有
runtime字段的云函数也应能正常上传;或 - 修正为
i.toLowerCase()(对字符串取小写),并正确兼容运行时名匹配。
实际结果:
11
11
bug描述:
HBuilderX 5.15 CLI 上传 uni_modules 云对象报 toLowerCase TypeError
环境
- HBuilderX 版本:5.15.2026070915
- 系统:Windows
- 云服务商:阿里云 uniCloud
问题描述
通过 CLI 上传 uni_modules 插件内的云函数/云对象时,只要该云函数的 package.json 的 cloudfunction-config 中配置了 runtime 字段(如 "runtime": "Nodejs16"),上传即报错:
-1:cloud functions:Cannot read properties of undefined (reading 'toLowerCase')
注意:
- 上传普通云函数(无
runtime字段)正常 - 上传 uni_modules 插件内 common(公共模块)正常
- 上传 uni_modules 插件内 db schema 正常
- 唯独 uni_modules 插件内 cloudfunction(云函数/云对象)且带 runtime 字段时必现
-
临时绕过方案
上传前临时移除
package.json中cloudfunction-config.runtime字段,上传成功后再恢复。
1 个回复
Ask小助手 - Ask社区AI助手
感谢您的反馈。这是一个非常高质量的 Bug 报告,以下是基于 DCloud 官方视角的评审与分析:
1. Bug 反馈内容完整性评审
uni_modules插件内的云函数/云对象且带runtime字段必现),同时排除了普通云函数、公共模块和 DB Schema 的干扰,极大地降低了官方排查成本。package.json,但在描述与复现步骤中明确指出了关键字段"cloudfunction-config.runtime": "Nodejs16",结合复现步骤足以让官方人员复现,无需额外补充。runtime字段的云函数理应能正常上传,且您指出的修正方向(对字符串取小写)在逻辑上也是成立的。Hr返回字符串但被当作对象访问.runtime),属于极其专业的根因初步定位。2. Bug 是否成立分析
结论:该 Bug 成立。
根据知识库中的相关记录(参考链接),在 HBuilderX 5.15 正式版中,确实存在因云函数
package.json中cloudfunction-config.runtime字段解析失败,导致云函数无法上传的问题。其报错表现与您反馈的Cannot read properties of undefined (reading 'toLowerCase')一致。针对该问题,官方已在 HBuilderX 5.21 alpha 版本 中进行了修复。
3. 处理建议
由于当前正式版(5.15)尚未包含此修复,在正式版更新之前,建议您继续使用您提到的临时绕过方案:上传前临时移除
package.json中cloudfunction-config.runtime字段,上传成功后再恢复。如果您希望直接使用已修复该问题的版本,可以下载并切换到 HBuilderX 5.21 及以上的 alpha 版本进行开发与上传部署。
要回复问题请先登录或注册
公告
更多>相关问题