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/**/*"