譬如有一个万条以上的数组arr,需要传递给后端,现在想让他1000条,1000条的传,目前的思路是,设置一个变量a初始值为1000,axios交互时先判断a是否==1000,若成立,从arr中取出a长度的数据,上传,得到上传成功的指令,再次调用此方法,并将a+=1000。这个思路正确吗?还有方法可以自己调用自己吗?这是我目前的两个疑惑
譬如有一个万条以上的数组arr,需要传递给后端,现在想让他1000条,1000条的传,目前的思路是,设置一个变量a初始值为1000,axios交互时先判断a是否==1000,若成立,从arr中取出a长度的数据,上传,得到上传成功的指令,再次调用此方法,并将a+=1000。这个思路正确吗?还有方法可以自己调用自己吗?这是我目前的两个疑惑
直接把数组提前切片,按顺序上传即可,代码简洁,无心智负担
伪代码
async postArray() {
const arr = new Array(10000).fill(1);
const arrList = Array.from(
{length: Math.ceil(arr.length / 1000)},
(v, i) => arr.slice(i * 1000, (i + 1) * 1000),
);
for (const ary of arrList) {
await this.$axios.post('/xxx', {ary});
}
},
10 回答11.2k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决