好多疑问,想不明白

来源:4-2 热卖推荐--从服务器端获取数据

鹿人神经粉

2020-02-20 17:44:30

http://img.mukewang.com/climg/5e4e51d608d1692f06270520.jpg

http://img.mukewang.com/climg/5e4e51d60875dd7a10780833.jpg

图1, 返回return undefined还赋值给data,失败走catch,为什么catch有if(err){console.log(err)}不能捕获到吗


图2:

更新当前页,更新总页数,是什么样子的,是什么效果的

this.recommends=data.itemList  //每次都获取20条,如果每次推荐,它都是20条


这个是什么意思,我们是不是让它每次不止20条,每次随机加1条的意思吗

this.recommends=this.recommends.concat(data.ItemList)

concat是什么意思


不加 if(data)为什么会报错



写回答

1回答

好帮手慕慕子

2020-02-20

同学你好,对于你的问题解答如下:

  1. 同学你好, 失败走catch, catch中if(err)可以捕获到,老师这里只是模拟下,你也可以在失败时做一些其他操作,例如:可以设置返回值为undefined

  2. concat是数组的方法,用于连接两个或多个数组,如下所示,每次请求到数据,会将当前请求数据添加到recommends数组中,然后,curPage加一,下次请求的就是新的数据,然后继续添加到recommends数组中,实现数据更新操作。

    http://img.mukewang.com/climg/5e4e65a80991e71317760696.jpg

  3. 可以结合前面的,请求失败,在catch中返回undefined进行理解。也就是说,当我们请求失败时,服务器端也是会返回数据,但这个数据不是我们想要的数据(所以前面老师模拟下,返回undefined情况,方便看效果)。如果不添加if(fata)判断,直接就使用,data中并不存在totalPage等这些数据,所以会报错。

同学可以结合视频讲解,再试着理解下。

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

0

0 学习 · 10739 问题

查看课程