写小程序出现的问题就是在获取网易云音乐视频接口时并不能获取,出现map未定义报错。
async getVideoList(navId){
if(!navId){ //判断navId为空串的情况
return;
}
let videoListData = await request('/video/group',{id:navId});
let index= 0;
let videoList = videoListData.datas.map(item =>{
item.id = index++;
return item;
})
this.setData({
videoList
})
},
想知道怎么解决这个问题,不会修改,有人说登录一下,但是登录完还是没有
videoListData.datas
有值吗
看看这个videoListData.datas 应该是videoListData.datas这个字段没有数据产生的
你打印下videoListData.datas
async getVideoList(navId){
if(!navId){ //判断navId为空串的情况
return;
}
let videoListData = await request('/video/group',{id:navId});
let index= 0;
let videoList = videoListData.datas&&videoListData.datas.map(item =>{
item.id = index++;
return item;
})
this.setData({
videoList
})
},
登录了但是返回未登录那就是请求的方法不对,建议先加个判断防止报错,然后你看看请求时传参有没有问题吧
1.出现问题很明显类型错误不是数组类型,map数组类型才行
解决:
1.要么map之前做个判空处理
2.要么返回数组类型,没数据返回[],空数组