扫码关注官方订阅号
现有多条数据需要一条一条的发回服务端,目前的做法是在数组里循环,异步发回服务端。最近需求更改了,要求发回去一条之后,拿到成功信息之后再发送第二条。这样循环嵌套异步就不好实现了,如果数据多了可能会更加麻烦。前台使用angularjs,求大手给个思路。
function ajax(name, cb){ console.log('request:'+name); setTimeout(function(){ console.log('response:'+name); cb && cb(); }, Math.random()*3000); } function request(name){ return function(cb){ return function(){ ajax(name, cb); } } } var httpArr = []; for(var i = 0; i < 5; i++){ httpArr.push(request(i)); } httpArr.reduce(function(a, b){ return b(a); })(); // 输出 /* request:4 response:4 request:3 response:3 request:2 response:2 request:1 response:1 */
用promise,AngularJS的话用$q
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
用promise,AngularJS的话用$q