处理Durandal应用程序中视图的加载超时

时间:2013-10-17 15:38:35

标签: javascript knockout.js requirejs durandal durandal-navigation

我有一个Durandal应用程序,在尝试加载视图时会定期超时。这是一个示例超时错误:

Error: Load timeout for modules: text!views/primaryapplicants.html
http://requirejs.org/docs/errors.html#timeout

如果您查找提供的网址,则会显示一些可能的问题:

  • 列出的模块中的脚本错误
  • 路径配置不正确
  • 多个模块ID映射到同一个文件

这些都不是我的问题。这是一个真实的,真正的超时。由于某种原因,它无法加载视图文件。

有一些RequireJS documentation on handling errors ...但是在阅读了很多次之后,我仍然无法弄清楚如何在我的视图模块上捕获加载超时。

理想情况下,我想要做的是a)延长超时或b)给用户一个通知并允许他们再次尝试加载视图。

现在发生的事情是视图无法加载,用户没有得到错误的反馈 - “请等待,加载”对话框消失,因为AJAX请求已完成,但视图未更改

1 个答案:

答案 0 :(得分:6)

我有时会遇到同样的问题。对我来说,它通常发生在另一个异步请求阻塞服务器时(在我的开发机器上一次只能处理一个请求)并且请求了一个视图。

我还不知道怎么抓住这个,但是为了增加/禁用超时:

requirejs.config({
    waitSeconds: 0 // 0 disables the timeout completely, default is 7 seconds
});