分析
Cloudflare 网站分析
在您的 Nuxt 应用程序中使用 Cloudflare 网站分析。
Cloudflare 网站分析 与 Nuxt 是一个很棒的隐私分析解决方案。 它为您的网站提供免费的、以隐私为中心的分析。 它不会从您的访问者那里收集个人数据,但会提供有关您的网页性能的详细见解,这些见解是您的访问者体验到的。
在您的 Nuxt 应用程序中全局加载 Cloudflare 网站分析的最简单方法是使用 Nuxt 配置。 或者,您可以直接使用 useScriptCloudflareWebAnalytics 组合。
全局加载
如果您希望避免在开发中加载分析,您可以在您的 Nuxt 配置中使用 环境覆盖。
export default defineNuxtConfig({
scripts: {
registry: {
cloudflareWebAnalytics: {
token: 'YOUR_TOKEN_ID'
}
}
}
})
useScriptCloudflareWebAnalytics
The useScriptCloudflareWebAnalytics
组合让您可以对 Cloudflare 网站分析在您的网站上何时以及如何加载进行细粒度控制。
function useScriptCloudflareWebAnalytics<T extends CloudflareWebAnalyticsApi>(_options?: CloudflareWebAnalyticsInput) {}
请遵循 注册表脚本 指南以了解有关高级用法的更多信息。
组合具有以下默认值
- 触发器:客户端 脚本将在 Nuxt 处于水合状态时加载,以保持网络重要指标的准确性。
CloudflareWebAnalyticsInput
export const CloudflareWebAnalyticsOptions = object({
/**
* The Cloudflare Web Analytics token.
*/
token: string([minLength(32)]),
/**
* Cloudflare Web Analytics enables measuring SPAs automatically by overriding the History API’s pushState function
* and listening to the onpopstate. Hash-based router is not supported.
*
* @default true
*/
spa: optional(boolean()),
})
CloudflareWebAnalyticsApi
export interface CloudflareWebAnalyticsApi {
__cfBeacon: {
load: 'single'
spa: boolean
token: string
}
}
示例
通过 Nuxt 准备就绪时的 app.vue
加载 Cloudflare 网站分析。
app.vue
<script setup lang="ts">
useScriptCloudflareWebAnalytics({
token: '12ee46bf598b45c2868bbc07a3073f58',
scriptOptions: {
trigger: 'onNuxtReady'
}
})
</script>
Cloudflare 网站分析组合将一个 window.__cfBeacon
对象注入全局作用域。 如果您需要访问它,您可以通过等待脚本来实现。
const { onLoaded } = useScriptCloudflareWebAnalytics()
onLoaded(({ cfBeacon }) => {
console.log(cfBeacon)
})