大佬教程收集整理的这篇文章主要介绍了学习dojo Deferred,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
require(["dojo/Deferred","dojo/request","dojo/_base/array","dojo/dom-construct","dojo/dom","dojo/domReady!"],function(Deferred,request,arrayUtil,domConstruct,dom) { // Create a deferred and get the user list var deferred = new Deferred(),userlist = dom.byId("userlist"); // Set up the callBACk and errBACk for the deferred deferred.then(function(res){ arrayUtil.forEach(res,function(user){ domConstruct.create("li",{ id: user.id,innerHTML: user.username + ": " + user.name },userlist); }); },function(err){ domConstruct.create("li",{ innerHTML: "Error: " + err },userlist); }); // Send an http request request.get("users.json",{ handleAs: "json"}).then( function(responsE){ // Resolve when content is received deferred.resolve(responsE); },function(error){ // Reject on error deferred.reject(error); } ); });
require(["dojo/request",function(request,dom) { var deferred = request.get("users.json",{ handleAs: "json" }); deferred.then(function(res){ var userlist = dom.byId("userlist"); arrayUtil.forEach(res,function(err){ // This shouldn't occur,but it's defined just in case alert("An error occurred: " + err); }); });
require(["dojo/request","dojo/json",JSON,dom) { var original = request.get("users-mangled.json",{ handleAs: "json" }); var result = original.then(function(res){ var userlist = dom.byId("userlist1"); return arrayUtil.map(res,{ innerHTML: JSON.Stringify(user) },userlist); return { id: user[0],username: user[1],name: user[2] }; }); }); // result 对像有一个`then`方法,它可以接受回调函数, // 这跟 original (ajax返回的对你)是一样的 -- 但是回调函数处理的数据 // 不在是Ajax的返回值, 而是第一次回调函数的返回值 result.then(function(objs){ var userlist = dom.byId("userlist2"); arrayUtil.forEach(objs,userlist); }); }); });
original.then(function(res){ var userlist = dom.byId("userlist3"); arrayUtil.forEach(res,function(user){ domConstruct.create("li",{ innerHTML: JSON.Stringify(user) },userlist); }); });
require(["dojo/request",dom) { function getUserList(){ return request.get("users-mangled.json",{ handleAs: "json" }).then(function(responsE){ return arrayUtil.map(response,function(user){ return { id: user[0],name: user[2] }; }); }); } getUserList().then(function(users){ var userlist = dom.byId("userlist"); arrayUtil.forEach(users,userlist); }); }); });
以上是大佬教程为你收集整理的学习dojo Deferred全部内容,希望文章能够帮你解决学习dojo Deferred所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。