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

Handling load timeouts of a view in a Durandal app

本文关键字:加载 超时 视图 Durandal 应用 处理      更新时间:2023-09-26

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

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

如果查找提供的 URL,它会提示一些可能的问题:

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

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

有一些关于处理错误的 RequireJS 文档...但是在阅读了几次之后,我仍然无法弄清楚如何在我的视图模块上捕获加载超时。

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

现在发生的情况是,视图根本无法加载,用户没有得到出现错误的反馈 - "请稍候,正在加载"对话框消失,因为 AJAX 请求已完成,但视图没有更改。

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

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

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