---
title: "Vercel 分析"
description: "在你的 Nuxt 应用中使用 Vercel 分析。"
canonical_url: "https://nuxt-scripts.zhcndoc.com/scripts/vercel-analytics"
last_updated: "2026-05-22T14:11:48.221Z"
---
[Vercel Analytics](https://vercel.com/docs/analytics) 为你的 Nuxt 应用提供轻量级且注重隐私的网页分析。在部署于 [Vercel](https://vercel.com) 时,它能够零配置地追踪页面浏览和自定义事件。
### 非 Vercel 部署
当在 Vercel 之外部署时,需要显式提供你的 DSN:
```ts
useScriptVercelAnalytics({
dsn: 'YOUR_DSN',
})
```
### 第一方模式
Vercel 分析会自动启用第一方模式。Nuxt 在本地打包分析脚本,并通过你的服务器代理数据收集请求。这可以防止广告拦截器阻止分析,并从第三方请求中移除敏感数据。
```ts
export default defineNuxtConfig({
scripts: {
registry: {
vercelAnalytics: { trigger: 'onNuxtReady' },
}
}
})
```
## 默认设置
- **触发时机:客户端** 脚本将在 Nuxt 进行 hydration 时加载,以保持网页关键性能指标的准确性。
你可以直接通过代理访问 `track` 和 `pageview` 方法,或等待 `$script` Promise 来访问对象。对于任何无返回值的函数,建议使用代理。
```ts [代理]
const { proxy } = useScriptVercelAnalytics()
proxy.track('signup', { plan: 'pro' })
```
```ts [onLoaded]
const { onLoaded } = useScriptVercelAnalytics()
onLoaded(({ track }) => {
track('signup', { plan: 'pro' })
})
```
## 示例
当 Nuxt 准备好时通过 `app.vue` 加载 Vercel 分析。
```vue [app.vue]
```
### 手动追踪
如果你想完全控制追踪内容,可以禁用自动追踪,并手动调用 `track` / `pageview`。
```vue [app.vue]
```
### beforeSend
使用 `beforeSend` 在事件发送到 Vercel 前过滤或修改事件。返回 `null` 可取消事件。
```vue [app.vue]
```