webVitalsAttribution

在除錯與 Web Vitals 相關的問題時,若能精確定位問題來源通常很有幫助。 例如,在累計版面位移 (CLS) 的情況下,我們可能想知道當最大單次版面位移發生時,第一個移動的元素是什麼。 或者,在最大內容繪製 (LCP) 的情況下,我們可能想識別頁面中對應 LCP 的元素。 如果 LCP 元素是圖片,知道圖片資源的 URL 可以幫助我們找到需要最佳化的資源。

精確定位影響 Web Vitals 分數的最大因素,也就是所謂的 attribution, 能讓我們獲得更深入的資訊,例如 PerformanceEventTimingPerformanceNavigationTimingPerformanceResourceTiming 的條目。

Next.js 預設關閉 attribution 功能,但可以透過在 next.config.js 中指定以下內容來按指標啟用:

next.config.js
experimental: {
  webVitalsAttribution: ['CLS', 'LCP']
}

有效的 attribution 值為 NextWebVitalsMetric 類型中指定的所有 web-vitals 指標。