Это хороший подход. Обратный подход заключается в том, чтобы заключить ваш URLLoader в класс и сохранить там информацию, если вы хотите, чтобы запрашивающий класс был проинформирован о том, что загрузка завершена и какой URL был успешно загружен.
Вы бы получили к нему что-то вроде
customLoader.url="http://.....";
customLoader.onLoadDelegate = this;
customLoader.load();
и ждать обратного вызова в
public function customLoaderComplete(url:String, data:[Object or whatever you set]) {
}
в классе customLoader вы сохраняете URL и делегируете
private var url:String;
private var onLoadDelegate:Object;
public function set url(_url:String):void {
url = _url;
}
public function set onLoadDelegate(_onLoadDelegate:Object):void {
onLoadDelegate = _onLoadDelegate;
}
затем вы создаете запрос, URLLoader и т. Д. И настраиваете прослушиватель Event.COMPLETE для запуска функции, которая сообщает делегату
public function dataLoaded(event:Event):void {
.. parse event.target.data if needed...
onLoadDelegate.customLoaderComplete(url, data);
}
Если вы сделаете еще один шаг, класс «выдачи запросов» верхнего уровня может придерживаться интерфейса / расширять базовый класс, чтобы вам не приходилось использовать анонимные объекты.