只有相信自己的目标,努力工作和奋斗的人才能取得最终的成功。但是我一直相信的一件事是,当您触摸自己哭泣时,您就成功了!
本文实例为大家分享了js使用generator函数同步执行ajax任务的具体代码,供大家参考,具体内容如下
function request(url, callback) { fetch(url, {mode: 'cors', credentials: 'include', headers: new Headers({ 'X-Requested-With': 'XMLHttpRequest' })}) .then(response => response.text()) .then(text => { console.log(url); console.log(text); callback(text); }) .catch((e) => console.log(e)); } var iterator = null; function getData(src){ request(src, function(response){ iterator.next(JSON.parse(response)); }) } function getTpl(src){ request(src, function(response){ iterator.next(response); }); } // 同步任务 function render(data, tpl){ for(var i in data) { tpl = tpl.replace("${"+i+"}", data[i]); } return tpl; } // 主逻辑 var getArticles = function* (src){ console.log('begin') var data = yield getData(src) var tpl = yield getTpl(data.tpl) var res = render(data, tpl) console.log(res) } iterator = getArticles('data.json') // 开始执行 iterator.next() // 异步任务模型
本文js使用generator函数同步执行ajax任务到此结束。当你觉得自己满怀希望,对未来充满信心,别人看到的就是有魅力,风华绝代的你。小编再次感谢大家对我们的支持!