微信开发者工具中出现WAServiceMainContext.js:2 TypeError: Cannot read property 'length' of undefined错误

img


微信开发者工具中出现WAServiceMainContext.js:2 TypeError: Cannot read property 'length' of undefined错误,请问各位巨佬怎么解决这个问题,万分感谢!

原因
根据提示中提到的:“无法读取未定义的属性length”。

进一步追查错误,
第76行 res.data.shop为空导致的导致的,
所以会报错:WAServiceMainContext.js:2 TypeError: Cannot read property 'length' of undefined

再进一步核对的话
你需要看一下你的res res.data res.data.shop哪一个为空

以及为空的原因,是否是api接口返回的数据为空

然后进行下一步排查


解决方法

建议将第76行改成这样的判断,可以避免这样的错误

if(res && res.data && res.data.shop && res.data.shop.length>0)

如有问题及时沟通

您好,输入if(res && res.data && res.data.shop && res.data.shop.length>0)后,没有错误了,但变成了没有更多内容,请问怎么解决

img

第一:控制台查看后台接口返回的数据格式,根据结构在做处理
第二:在76行代码if判断前加上两行输出日志,比如console.log(res.data)和console.log(res.data.shop),这两个值应该为空或null,导致length方法出错