ActionScript 3 AsyncToken aplicación
-
20-08-2019 - |
Pregunta
Buscando un ejemplo de la documentación de los enlaces en cuanto a cómo implementar un método de devolución de AsyncToken.
Nota que esto no es sobre el uso/consumo de un método de devolución de AsyncToken!Quiero escribir tales métodos de mí mismo.
Solución
La aplicación de un método que devuelve un AsyncToken es simple:
function doStuffLater():AsyncToken {
var token:AsyncToken = new AsyncToken(null);
// This method will randomly call the responder's 'result' or 'fault'
// handler.
function doStuff() {
var response:String = (Math.random() > 0.5)? "result" : "fault";
for each (responder:IResponder in (token.responders || [])) {
// rememeber: this is equivilent to
// responder.result(...) or responder.fault(...)
responder[response]("Got a result!");
}
}
setTimeout(doStuff, 1000);
return token;
}
Tenga en cuenta que en realidad no se puede utilizar el applyResult
y applyFault
métodos, porque pasan los socorristas de un Event
, cuando el respondedor excepto el resultado o fallo objeto.
Otros consejos
La clase TestUtil de Swiz Framework tiene algunas formas realmente geniales para burlarse del comportamiento AsyncToken:
Brian Kotek tiene una publicación de blog muy informativa sobre cómo usarlo para simular llamadas al servidor utilizando delegados simulados: