import SimpleJsTracker from "simple-js-tracker";
const simpleJsTracker = new SimpleJsTracker({
debug: true,
url: "", // 服务地址
enableHeatMap: true, // 开启热力图
enableHashTracker: true,
config: {
...
}
});
// 点击
<div v-track:click="{'event_type': 12, ...}">加入购物车</div>
// 键盘
<div v-track:keyup="{'event_type': 10, ...}">搜索</div>
const simpleJsTracker = new SimpleJsTracker({
debug: true,
url: "", // 服务地址
enableHeatMap: true, // 开启热力图
enableHashTracker: true,
config: {
...
}
});
simpleJsTracker.registerErrorEvent({
vm: Vue,// vue实例 vue环境下可传
errorCallback: (error) => {
// error : {
// errorMsg, 异常信息
// pageInfo 当前页面信息
// }
console.log(error)
}
})
import SimpleJsTracker from "simple-js-tracker";
const simpleJsTracker = new SimpleJsTracker({
debug: true,
url: "", // 服务地址
enableHeatMap: true, // 开启热力图
enableHashTracker: true,
config: {
...
}
});
// 更新传参
simpleJsTracker.setConfig(options);
// 自定义上传
simpleJsTracker.sendTracker(params);
// 初始化自定义vue2/3指令
simpleJsTracker.initDirectives(Vue);
// 手动上报前拦截器
simpleJsTracker.interceptors.sendTracker.use(
(config) => {
// ... 上报传参
return config;
},
(error) => {}
);
// 初始化 VueRouter 监听
// 页面跳转监听, 上报的参数让用户自行提供 report
simpleJsTracker.registerVueRouterEvent(router, (res, report) => {
const { to, from, secound } = res;
// 页面进入
if(to.meta.tracking) {
const fromParams = {
'event_type': 5,
...to.meta.tracking,
}
report(fromParams);
}
// 页面离开
if(from.meta.tracking) {
const fromParams = {
'event_type': 6,
...from.meta.tracking,
}
report(fromParams);
}
});