我有一个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
复制相似问题