vue百度统计代码;通过_trackPageview来手动添加# hash参数的链接,trackPageview说明
方案一: 有问题
var _hmt = _hmt || [];
window._hmt = _hmt; // 必须把_hmt挂载到window下,否则找不到
(function () {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?"+ 百度站点id;
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
router.beforeEach((to, from, next) => {
if (window._hmt) {
if (to.path) {
window._hmt.push(['_trackPageview', '/#' + to.fullPath]);
}
}
next();
});
那这样的话第一个页面的#号就没有统计到呀
再修改到router.afterEach里,以及兼容hash和search的参数
方案二:
try {
//百度统计
let _hmt = _hmt || [];
window._hmt = _hmt; // 必须把_hmt挂载到window下,否则找不到
//关闭了自动PV跟踪
window._hmt.push(['_setAutoPageview', false]);
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?百度id";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
} catch(e) {
console.log('百度统计', e)
}
router.afterEach((to, from) => {
try {
//关闭了自动PV跟踪
window._hmt.push(['_setAutoPageview', false]);
--废弃代码开始,仅做记录,使用请删除--
// 百度统计默认截断#号后面的参数,故通过手动来添加pv,去掉origin之后的所有
//一开始以为直接用location.href后来发现
//这里页面还没有跳转呀,获取的还是from页面的地址,还是要用to.fullpath
window._hmt.push(['_trackPageview', location.href.replace(location.origin,'')]);
--废弃代码结束--
// 百度统计默认截断#号后面的参数,故通过手动来添加pv
window._hmt.push(['_trackPageview', '/'+ location.search +'#' + to.fullPath]);
} catch(e) {
console.log('百度统计', e)
}
})
网友评论