Dojo需要,在模块加载失败时连接到错误

Pet*_*ter 8 javascript error-handling dojo requirejs

当我尝试加载不存在的模块时,它失败并出现404错误(当然).我想处理此错误但不知道如何连接到"错误"事件.

根据Dojo doc,我应该能够使用它的微事件api来做到这一点.

此代码不起作用.

var handle = require.on('error', function( error )
                 {
                     alert('Finally error')
                 });

require(['nonexistent/module'], function ( m )
{
     alert('Module was loaded correctly')           
});
Run Code Online (Sandbox Code Playgroud)

Dojo版本是1.7.1,浏览器最新的Chrome.

Roy*_*ham 5

在这一个文档有点好奇.在xhr需要失败后,我可以在短暂超时(dojoConfig.waitSeconds)之后触发'error'事件,但只能在异步模式下,并且只能使用开发版的Dojo.

为什么?好吧,只有异步模式才会引发事件,看起来CDN构建是用dojo-timeout-api == 0构建的.

你可以使用自己的自定义(SDK)版本的Dojo吗?

@mschr - 如果你使用Dojo(每晚)而不是Dojo 1.7.2,你的jsfiddle样本也可以工作 - 与上面相同的原因.