我有一个SPA构建,它与react-router
一起使用浏览器历史API来处理位置更改。我还安装和配置了Matomo (以前的Piwik)。
我编写了一个中间件,用于侦听路由器的@@router/LOCATION_CHANGE
操作,并在每次触发该操作时调用Matomo的.trackPageVisit()
。
问题是,Matomo每次只跟踪第一页的URL。
因此,如果我使用http://localhost
输入,然后转到http://localhost/page
,Matomo将跟踪http://localhost
两次,而不是page
。当输入/page
并移动到/login
时,我将在report /page
中看到两次跟踪。这使我得出了一个结论:在我的配置中,Matomo不通过history.pushState
处理浏览器的历史操作。我在寻找可能是什么原因的想法。
发布于 2018-03-07 11:56:54
事实证明,Matomo并不支持pushState本身。您需要手动使用setCustomUrl
,然后调用trackPageView()
。
更多信息可以在这里找到:https://matomo.org/blog/2017/02/how-to-track-single-page-websites-using-piwik-analytics/
https://stackoverflow.com/questions/49150472
复制相似问题