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 请求应该使用英文逗号分隔多个表名,而不是中文分号。

解决方案:

  1. 检查表名分隔符:确保在 multiSend 请求中使用英文逗号分隔表名,例如:
// 正确
const tables = 'ppy-order,ppy-aftersale-order'

// 错误 - 使用了中文分号
const tables = 'ppy-order;ppy-aftersale-order'
回到顶部