分析
接口给我们的数据是一个一维数组[{}, {}, {},{},{},{},{},{}],为了方便轮播图使用,我们把4件商品分成一组,一组是一个单位来填充轮播的一屏。
二维数组转换成一维数组([1,1],[2,2],[3,3] 转换成 [1, 1, 2, 2, 3, 3])
slice()方法
// 得到需要的数据: 把一维数组转成二位数组
// 转换前:[1,2,3,4,5,6,7,8]
// 取size=4; 4个一组
// 转换后:[[1,2,3,4], [5,6,7,8]]
findRelGoods(id).then(data => {
const size = 4 // 每页4条
const total = Math.ceil(data.result.length / size) // 总页数
//Math.ceil向上取整
for (let i = 0; i < total; i++) {
const t = data.result.slice(i * size, (i + 1) * size)
sliders.value.push(t)
}
})
一维数组转换成二维数组
apply()方法
let arr =[[1,1],[2,2],[3,3]];
let onearr=[].concat.apply([],arr)
console.log(onearr)
//[1, 1, 2, 2, 3, 3]
flat()方法
let arr =[[1,2],[3,4]];
let onearr=arr.flat()
console.log(onearr)
// [1, 2, 3, 4]