以下为2022年5月12日更新
今天跟朋友解决一个vue项目中的问题,大概意思是:
前端向后端发送接口请求,请求成功之后,后端返回了一个数组,数组中包含了上百条数据。而我们需要做得是将这上百条数据以每组20条的形式渲染到页面上。
我和朋友的解决办法是:
定义一个空数组,这个空数组里面的元素也是空数组,然后循环返回的包含了上百条数据的数组,将前20条数据放进第一个为空数组的元素中,然后利用splice将原数组的前20条数据删除,跳出循环。以下为代码:
getSell(){
topicList({需要传的数据}).then(response=>{
let arr = [];
arr.length = 10; //因为200条数据 20个一组 正好是10组
for(var i=0;i
这样每组20个就分好了,因为需要页面加载时候就要渲染,所以我们在钩子函数mounted() 中调用了getSell()函数。
mounted(){
this.getSell();
}
这时候问题出现了,页面并没有渲染。
然后我们觉得可能是接口需要传的数据可能没有获取到,于是,我们加了一个定时器
mounted(){
setTimeout(()=>{
this.getSell();
},500)
}
加完定时器之后,页面上确实渲染出数据了,但是却并完整,于是我们在里面的for循环中加了个console.log('1'),发现控制台上并没有输出‘1’,这也说明第二个for循环没走,最后终于找到了办法。
getSell(){
topicList({需要传的数据}).then(response=>{
let arr = [];
arr.length = 10; //因为200条数据 20个一组 正好是10组
for(var i=0;i
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)