跳至主要内容

browser-sync 重複 reload 的解法

· 閱讀時間約 1 分鐘

上次在 更新網站產生器 的時候,有提到預覽功能 browser-sync 變得緩慢的問題。

今天才發現變慢的主因不是 build 產生太多檔案,而是因為偵測到太多檔案變動而不穩定。

一開始我改成偵測到檔案變動之後就去 build,然後產生一個 .reload 的檔案,裡面放 timestamp,這樣 browser-sync 只要去偵測這個檔案就可以了。

但是我也有一些檔案是不需要 build 的阿,這樣又要把路徑區分開來寫在 browser-sync,有點麻煩。

最後決定還是讓 browser-sync 偵測整個 public 資料夾,再加上兩個參數就解決了:

  • --reload-debounce 300:等檔案變動安靜下來再 reload。
  • --reload-delay 100:多等一點時間再刷新,避免被連續事件打爆。

2026/02/25 微更新

還是限制一下範圍比較好,像是這樣:

--files "public/assets/**/*.css"
--files "public/assets/**/*.js"
--files "public/*.html"
--files "content/**/*"

筆記