Polymer.Base.importHref 和不稳定的网络状况

Polymer.Base.importHref and flaky network conditions

我们正在使用 Polymer.Base.importHref 在需要时加载应用程序的某些部分。

这工作得很好,除非网络环境不稳定:如果特定页面的第一个 importHref 失败,那么在重新加载整个应用程序之前,它永远不会开始为相同的 URI 工作。

据我了解,这可能是有意为之:importHref 动态创建一个 link 元素,并且浏览器在使用 import 链接时不应加载同一文档两次。

我们目前解决这个问题的方法是跟踪每个 URI importHref 中的失败,如果请求的 URI 出现过失败,我们会向其附加类似 ?retry=<counter> 的内容。

效果很好,目前没有不良影响。

我们还尝试启用 "lazy registration" 而不是延迟加载元素,但这并没有带来我们希望单独实现的性能改进。不过,这两种惰性可以很好地协同工作。