我的代码不需要任何调试,我正在寻找更多的方法。
这是我的问题。我正在开发一个公司仪表板,该仪表板将加载到公司范围内的多台大屏幕电视上。每个屏幕都会加载我的flash应用程序,以显示广泛的信息。这就引出了我的问题。。。XML。
现在,我在开发时在本地运行我的应用程序。一切都很好,即使我在一台电视上测试过,它也运行得很好。然而,在开发这个应用程序之前,我做了另一个"创可贴修复",这是他们在我工作之前的东西。该应用程序运行良好,但可能每周一次加载失败,所有内容都变为空白。在一天的空白信息后,它会重新加载并继续工作。
在我的新应用程序中,我正试图围绕我已经看到的这个问题进行计划。我想做的是尝试加载xml,如果它无法再次尝试相同的函数3次。如果它失败了3次,那么它应该被破坏。:)
对我来说,这听起来像是一个try/catch语句,但我似乎无法让它按我想要的方式工作。我觉得这件事我想得太多了。
function loadXML ()
var i:Number = 0;
do {
try{
XMLLoader.load(new URLRequest("myXMLURL"));
} catch (error:Error) {
i++
}
}
while(i < 3)
}
任何反馈或任何其他确保xml不会失败的方法都将不胜感激。感谢
与其使用这样的循环,不如使用在IOErrorEvent
等情况下调度的内置事件。
如果在加载XML的URLLoader
上附加一个侦听器,则可以在IOErrorEvent
处理程序中重试:
function loadXML():void
{
var ldr:URLLoader = new URLLoader();
ldr.addEventListener(IOErrorEvent.IO_ERROR, error);
ldr.load( new URLRequest("document.xml") );
}
function error(e:IOErrorEvent):void
{
loadXML();
}
以下是URLLoader
在类似情况下调度的其他事件的列表。