【问题标题】:Angular Error In FireFox When Changing Urls更改 URL 时 FireFox 出现角度错误
【发布时间】:2016-04-12 13:07:14
【问题描述】:

我在加载页面时调用的角度工厂中有一个函数。有一个控制器调用这个工厂方法。

看起来像这样。

factory.getData = $http.post('/LocationOfData/Here').
    then(function(response) {
        // stuff happens here when successful
    }, function (response) {
        console.log('an error has occurred');
   });

我注意到我的页面在//stuff happens here when successful 被击中时可以正常工作...但仅在页面完全加载时。

如果我加载我的页面,然后很快单击一个链接将我带到我的应用程序中的另一个页面,则会发生错误。 (如在 console.log 中。)

这似乎只发生在 FireFox 中。在 Chrome 中一切正常。

对我应该改变或注意什么有什么建议吗?

编辑:响应对象是

Object { data: null, status: 0, headers: headersGetter/<(), config: Object, statusText: "" }

【问题讨论】:

  • 那么response在错误发生时包含什么?
  • 你能发布实际的错误响应吗
  • @princeG 发布响应对象
  • status: 0 有点奇怪。您能在浏览器的 Network 控制台中看到失败的请求吗?响应和响应标头是什么样的?
  • 您是否在使用任何第三方路由服务(如ui-router)?此外,headersGetter 似乎是一个很好的起点 (google.com/?gws_rd=ssl#q=headersGetter)

标签: angularjs


【解决方案1】:

通常在 JavaScript 中,当页面加载时,如果您注入任何脚本,它会将其视为并行进程之一,如果您禁用浏览器的缓存,则不会考虑并行进程并会终止该进程,在您的情况下,在页面加载时您正在执行服务调用,如果您没有禁用缓存,调用将被视为 chrome 中的单独线程或进程,如果您禁用,您可能会在 Chrome 中使服务失败缓存

这只是一个假设,可能会有所帮助:)

【讨论】:

    猜你喜欢
    • 2014-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-18
    • 1970-01-01
    • 2020-05-21
    • 2014-04-12
    • 1970-01-01
    相关资源
    最近更新 更多