首页 > 解决方案 > 如何使用 Firebase Analytics 从 SPA(单页应用)网络应用发送 page_view 事件?

问题描述

我有一个使用 React + Firebase 构建的 SPA Web 应用程序。

我现在正在使用 Firebase Analytics,并且我想记录page_view作为客户端路由的页面的事件(因为我的应用程序是单页应用程序)。

我在 Firebase Analytics 文档中没有找到任何关于单页应用的信息。

https://firebase.google.com/docs/analytics/events

但我确实在gtag.js文档中找到了一些东西。

来自: https ://developers.google.com/analytics/devguides/collection/gtagjs/single-page-applications

在此处输入图像描述


来自:https ://firebase.google.com/docs/analytics/events#log_events_3

您可以在gtag.js 事件参考中找到多个事件及其参数的实现细节。

从那个事件参考中,我们得到:

在此处输入图像描述

从上图中,我们可以看到该page_view事件似乎没有任何相关参数。

问题

我可以看到 Firebase Analyticspage_view在我的应用首次加载后已经发送了第一个事件。

但是,一旦我的用户单击我的内部链接并更改其浏览器 URL(客户端路由,没有服务器调用),我如何page_view为由生成的新 URL 触发另一个事件react-router-dom

如何使用 Firebase Analytics 实现这一点?我是否需要在发送事件之前更新页面路径,就像gtag.js文档中所说的那样?我该怎么做?

标签: javascriptfirebasegoogle-analyticsfirebase-analyticsgtag.js

解决方案


由于您的应用程序是单页应用程序,因此只有一个page_view事件。这实际上是正确的行为,因为这意味着您可以使用page_view事件来跟踪应用程序/页面的加载频率。

当您的应用程序中显示特定屏幕时,您需要触发一个screen_view事件。有关这方面的示例,请参阅 AngularFire 库的有关跟踪屏幕视图的文档。


推荐阅读