在SPA(Single Page Application)單頁面應用中,頁面只會刷新一次。傳統的方式只會在頁面加載完成后上報一次PV,而無法統計到各個子頁面的PV,也無法讓其他類型的日志按子頁面聚合。本文介紹如何使用ARMS前端監控SDK解決SPA頁面上報問題。
ARMS前端監控SDK提供了針對SPA頁面的兩種處理方式:
- 開啟SPA自動解析
- 完全手動上報
開啟SPA自動解析
此方法適用于大部分以URL Hash作為路由的單頁面應用場景。
在初始化的配置項中,設置enableSPA為true
,即會開啟頁面的Hashchange事件監聽(觸發重新上報PV),并將URL Hash作為其他數據上報中的page字段。
完全手動上報
此方法可用于所有的單頁面應用場景。如果第一種方法無效,則可用此方法。
SDK提供了setPage方法來手動更新數據上報時的page name。調用此方法時,默認會重新上報頁面PV。更多信息,請參見setPage()。
// 監聽應用路由變更事件。
app.on('routeChange', function (next) {
__bl.setPage(next.name);
});