【问题标题】:Browser refresh after breakpoint断点后浏览器刷新
【发布时间】:2018-07-30 08:06:19
【问题描述】:

让我发疯的事情,突然发生在我所有的团队成员身上。 如果您在断点处暂停超过几秒钟,然后继续 (F8),浏览器会刷新页面。

它发生在我们的 mac 和 windows 机器上。

我们正在运行一个使用 gulp 和浏览器同步的 AngularJS 项目。 即使我关闭所有的观察者,它仍然会发生。

我能做什么??

【问题讨论】:

    标签: browser gulp browser-sync


    【解决方案1】:

    browserSync.init({ files: ['./**/*'], startPath: '/src', server: '', watchOptions: { ignored: 'node_modules/*', ignoreInitial: true }, socket: { clients: { heartbeatTimeout: 60000 } } }); add socket object in your browserSync init.

    【讨论】:

      【解决方案2】:

      对于遇到此问题的任何人,似乎 BrowserSync 的依赖项中存在一个问题,该问题已在较新版本中得到解决:https://github.com/BrowserSync/browser-sync/issues/1591

      这里提到的其他解决方案似乎并没有真正解决问题,如 GitHub 问题中所述:

      heartbeatTimeout 的增加并非在所有情况下都有帮助。它只是减少了页面刷新的可能性。

      在 heartbeatTimeout 未结束的情况下有效。我的意思如下。

      假设您已将超时设置为 60000 毫秒。从超时周期开始仅过去了 2 秒。然后通过断点停止应用程序 10 秒。 2 + 10 = 12 秒,因此应用程序将根据需要恢复工作,而无需刷新页面。

      但是如果从超时周期开始已经过去了 58 秒,例如,然后应用程序被断点停止 10 秒。 58 + 10 = 68 秒。超过心跳超时,所以应用程序将在恢复后由 browsersync 刷新。

      此问题从 v2.24.5 开始,并在 v2.25.1 中得到解决
      因此,将 BrowserSync 更新到 v2.25.1 之后的任何版本应该可以解决您的问题。我目前使用的是 v2.26.3,它似乎已经为我解决了。

      编码愉快! :)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-03-03
        • 2011-07-14
        • 1970-01-01
        • 2019-01-16
        • 1970-01-01
        • 2014-08-10
        • 1970-01-01
        • 2015-02-18
        相关资源
        最近更新 更多