uni-app 合并请求 multiSend 本地调试错误
uni-app 合并请求 multiSend 本地调试错误
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Windows |
操作步骤:
- 连接本地云函数,使用 multiSend 请求
预期结果:
- 正常返回结果
实际结果:
VM871 WAService.js:2 Unhandled promise rejection Error: Cannot read property 'split' of undefined
at success (vendor.js?t=wechat&s=1632791360758&v=5224bf2ba7d298ec71dc6c437245dcb5:4831)
at Function.forEach.s.<computed> (VM871 WAService.js:2)
at u (VM871 WAService.js:2)
at VM871 WAService.js:2
at u (VM871 WAService.js:2)
at r.<anonymous> (VM871 WAService.js:2)
at u (VM871 WAService.js:2)
at VM871 WAService.js:2
at VM871 WAService.js:2
(env: Windows,mp,1.05.2106300; lib: 2.19.4)
bug描述:
- 连接本地云函数,使用 multiSend 会发生错误
- 2.3.6 版本可以正常使用
- 14:59:20.698 [本地调试]“收到clientDB multiSend请求:表名:ppy-order;表名:ppy-aftersale-order”
- 14:59:20.736 [本地调试]TypeError: Cannot read property ‘split’ of undefined
- 14:59:20.743 [本地调试] at C:\soft\HBuilderX\plugins\unicloud\internal-functions\DCloud-clientDB\uni-curd\index.js:1:15002
- 14:59:20.743 [本地调试] at Array.forEach (<anonymous>)
- 14:59:20.748 [本地调试] at getUsedActionList (C:\soft\HBuilderX\plugins\unicloud\internal-functions\DCloud-clientDB\uni-curd\index.js:1:14966)
- 14:59:20.749 [本地调试] at e.exports (C:\soft\HBuilderX\plugins\unicloud\internal-functions\DCloud-clientDB\uni-curd\index.js:1:206748)
- 14:59:20.756 [本地调试] at Object.exports.main (C:\soft\HBuilderX\plugins\unicloud\internal-functions\DCloud-clientDB\index.js:1:77)
- 14:59:20.764 [本地调试] at s (C:\soft\HBuilderX\plugins\unicloud\tcb\serve.js:1:1425)
- 14:59:20.765 [本地调试] at uniCloudSecret (C:\soft\HBuilderX\plugins\unicloud\tcb\serve.js:1:2780)
- 14:59:20.772 [本地调试] at h (C:\soft\HBuilderX\plugins\unicloud\tcb\serve.js:1:2894)
- 14:59:20.780 [本地调试] at module.exports (C:\soft\HBuilderX\plugins\unicloud\tcb\serve.js:1:7111)
- 14:59:20.781 [本地调试] at module.exports.exec (C:\soft\HBuilderX\plugins\unicloud\server\controller\cloudfunctions.js:1:1416)
更多关于uni-app 合并请求 multiSend 本地调试错误的实战教程也可以访问 https://www.itying.com/category-93-b0.html
6 回复
顶,我也是这个问题,排查了半天,切换上一个版本就正常无误,切换至最新版就出现“Cannot read property ‘split’ of undefined”这个错误
更多关于uni-app 合并请求 multiSend 本地调试错误的实战教程也可以访问 https://www.itying.com/category-93-b0.html
Cannot read property ‘split’ of undefined”我也是这个报错,排查了半天
切换到云端的云函数就好了
我也是这个问题啊。求解啊!
切换到云端的云函数太费流量了,很快免费流量就用完了哦。
问题解决没
感谢反馈,此问题下版本修复,建议此类问题带上uniCloud分类方便相关人员看到
这个错误是由于在 uni-curd/index.js 中尝试对 undefined 值调用 split 方法导致的。从错误堆栈来看,问题出现在 getUsedActionList 函数中,该函数在处理 multiSend 请求时未能正确获取某些参数。
具体来说,错误发生在处理表名时。从日志可以看到请求的表名包含中文标点(分号),这可能是问题的根源。multiSend 请求应该使用英文逗号分隔多个表名,而不是中文分号。
解决方案:
- 检查表名分隔符:确保在
multiSend请求中使用英文逗号分隔表名,例如:
// 正确
const tables = 'ppy-order,ppy-aftersale-order'
// 错误 - 使用了中文分号
const tables = 'ppy-order;ppy-aftersale-order'

