不设置nickname发消息

- 发布:2025-03-01 00:24
- 更新:2025-03-10 11:54
- 阅读:100
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 10
HBuilderX类型: 正式
HBuilderX版本号: 4.52
手机系统: Android
手机系统版本号: Android 14
手机厂商: 华为
手机机型: SM-N9700
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
发送成功
发送成功
实际结果:
报错
报错
bug描述:
uni-im一发消息就报错:uniImCo.sendMsg error:, unicloud throw error, Cannot read properties of undefined (reading 'slice')
我自己整明白了,是uni-im-co云函数的msg.js的772行
title = msgData.type == 'system'? '系统消息' : nickname.slice(0, 20)
我这个用户忘了使用了什么注册了,反正不是正常注册,只有手机号,没有设置nickname(但是在uni-id的userinfo页面的昵称还显示了脱敏手机号),导致他发消息报错失败,重启应用还显示发送成功,请告诉我如何修改代码让这个它更兼容
1 个回复
DCloud_uniCloud_JSON
uni-im项目的用户必须有昵称,你可以给用户生成默认昵称,或者在
uni-im-co云函数的msg.js的772行
try catch,把用户的手机号码/邮箱等资料脱敏后使用