如何传播文件加载错误
How to propagate file load error?
我正在尝试编写一个基于浏览器的医学图像查看器,并使用XTK库来完成繁重的工作。当一个文件没有正确加载(任何原因),我想让用户知道一个弹出消息(例如说"文件无法加载")。据我所知,所有的错误处理/抛出都发生在loader.js或parser.js文件的深处。
更具体地说,当我下载这个文件并尝试用slicdrop加载它时,我在控制台中得到以下错误:Uncaught Error: invalid file signature:
这个错误在gunzip.js中被抛出。在其他时候,我有:
Uncaught Error: Loading failed:
在loader.js中被抛出。
有没有人知道我如何去捕捉或传递这些错误更高的链(即在JavaScript代码像XTK教程13?)。我尝试了以下方法:
try
sliceX.render();
catch(err)
console.log('ERROR');
但是这并没有捕获任何错误(我想这是由于文件加载的异步性质)。
X.renderer有一个onShowtime函数,当所有加载完成时调用。我会想象一个类似的函数,如onLoadError或其他loadingError事件?
我能想到的一个解决方案是添加类似下面代码的东西,在这里我可以查询错误消息,看看它们是否与错误文件加载引发的特定错误相匹配:
<script type="text/javascript">
window.onerror = function (errorMsg, url, lineNumber) {
if(errowMsg == 'invalid file signature')
alert(errorMsg);
};
</script>
感觉很粗糙…?如果能听听别人的意见就太好了
欢呼戴夫相关文章:
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- Ajax文件加载和<输入>文件加载
- 使用Bootstrap将JSON文件加载到表中
- 将组合JSON文件加载到谷歌地图
- 将文本文件加载到javascript中
- jQuery Mobile样式从另一个文件加载内容
- 使用JavaScript将压缩文本文件加载到字符串中
- 数组在手动写入时有效,但从文本文件加载时无效
- 如何在打印前等待javascript文件加载twitter,并在打印后关闭选项卡
- 从文本文件加载jsondata时出现空白页
- AngularJS:如何使用ng-include将javascript文件加载到部分中
- 使用jquery将html文件加载到html中,用于离线/本地项目
- 从另一个grunt文件加载grunt任务
- 将php文件加载到弹出窗口中,并将php变量发布到该弹出窗口中(使用onclick)
- 如何使用node.js将不同的json文件加载到不同的json对象中
- 将变量从服务器上的外部文件加载到 HTML 文档中
- 节点 - 将 JSON 文件加载到代码中
- 如何使用 JavaScript/jQuery 将 XML 文件加载到 JSP/HTML 页面
- NodeJS和ExpressJS-Javascript文件加载,但CSS文件不加载;t
- D3.js:通过Force Layout从JSON文件加载多个网络