useReportWebVitals
useReportWebVitals
钩子允许你报告 核心 Web 指标,并可以与你的分析服务结合使用。
传递给 useReportWebVitals
的新函数会使用到该点为止的可用指标进行调用。为了防止报告重复数据,确保回调函数引用不会改变(如下面的代码示例所示)。
pages/_app.js
import { useReportWebVitals } from 'next/web-vitals'
const logWebVitals = (metric) => {
console.log(metric)
}
function MyApp({ Component, pageProps }) {
useReportWebVitals(logWebVitals)
return <Component {...pageProps} />
}
useReportWebVitals
作为钩子参数传递的 metric
对象包含许多属性:
id
:当前页面加载上下文中指标的唯一标识符name
:性能指标的名称。可能的值包括特定于 Web 应用程序的 Web 指标 名称(TTFB、FCP、LCP、FID、CLS)。delta
:指标当前值与先前值之间的差异。值通常以毫秒为单位,表示指标值随时间的变化。entries
:与指标关联的 性能条目 数组。这些条目提供有关与指标相关的性能事件的详细信息。navigationType
:指示触发指标收集的 导航类型。可能的值包括"navigate"
、"reload"
、"back_forward"
和"prerender"
。rating
:指标值的定性评级,提供性能评估。可能的值是"good"
、"needs-improvement"
和"poor"
。评级通常通过将指标值与指示可接受或次优性能的预定义阈值进行比较来确定。value
:性能条目的实际值或持续时间,通常以毫秒为单位。该值提供了指标跟踪的性能方面的定量测量。值的来源取决于正在测量的特定指标,可以来自各种 性能 API