前端埋点解决方案

一、前言:基于神策数据的前端埋点解决方案 JavaScript 快速使用 · 神策分析使用手册[预览版]

二、sdk gitlab下载地址

https://github.com/sensorsdata/sa-sdk-javascript/releases

或者npm 安装

复制代码
npm i sa-sdk-javascript

三、入门

3.1 接入sdk 以及配置 (version 1.17.2),入口文件接入sdk 以及添加配置

复制代码
<script>
(function(para) {
  var p = para.sdk_url, n = para.name, w = window, d = document, s = 'script',x = null,y = null;
  w['sensorsDataAnalytic201505'] = n;
  w[n] = w[n] || function(a) {return function() {(w[n]._q = w[n]._q || []).push([a, arguments]);}};
  var ifs = ['track','quick','register','registerPage','registerOnce','clearAllRegister','trackSignup', 'trackAbtest', 'setProfile','setOnceProfile','appendProfile', 'incrementProfile', 'deleteProfile', 'unsetProfile', 'identify','login','logout','trackLink','clearAllRegister'];
  for (var i = 0; i < ifs.length; i++) {
    w[n][ifs[i]] = w[n].call(null, ifs[i]);
  }
  if (!w[n]._t) {
    x = d.createElement(s), y = d.getElementsByTagName(s)[0];
    x.async = 1;
    x.src = p;
    y.parentNode.insertBefore(x, y);
    w[n].para = para;
  }
})({
      sdk_url: 'sensorsdata.min.js',
      name: 'sensors',
      //数据接收地址
      server_url: 'https://report.woodpeckerlog.com/sa?project=production',
      //控制台是否显示日志
      show_log: false,
      send_type: 'beacon',
      app_js_bridge: true,
      //url改变触发
      is_track_single_page: true,
      heatmap: {
         //是否开启点击图,默认 default 表示开启,自动采集 $WebClick 事件,可以设置 'not_collect' 表示关闭
         clickmap:'default',
         //是否开启触达注意力图,默认 default 表示开启,自动采集 $WebStay 事件,可以设置 'not_collect' 表示关闭
         scroll_notice_map:'not_collect'
      }
      //配置打通 App 与 H5 的参数
      use_app_track: true,
      use_client_time: true,
    });  
    // 首次触发页面加载事件
    sensors.quick('autoTrack'); //神策系统必须是1.4最新版及以上
</script>

3.2 npm 使用方式

复制代码
import sensors from'sa-sdk-javascript';
sensors.init({
  server_url: '...',
  heatmap: {
     //是否开启点击图,默认 default 表示开启,自动采集 $WebClick 事件,可以设置 'not_collect' 表示关闭
     //需要 JSSDK 版本号大于 1.7
     clickmap:'default',
     //是否开启触达注意力图,默认 default 表示开启,自动采集 $WebStay 事件,可以设置 'not_collect' 表示关闭
     //需要 JSSDK 版本号大于 1.9.1
     scroll_notice_map:'not_collect'
  }
  .......
});
sensors.login(user_id);
sensors.quick('autoTrack');

四、常用api

4.1 公共属性注册

复制代码
sensors.registerPage({
   isLogin:xxxxxx
})

4.2 自定义事件使用

复制代码
sensors.track('自定义事件名称', {
       params1: xxx,
       params2: xxx,
});
相关推荐
Drift_Dream几秒前
在Vue样式中使用JavaScript 变量(CSS 变量注入)
前端
C_心欲无痕几秒前
vue3 - toRaw获取响应式对象(如由reactive创建的)的原始对象
前端·javascript·vue.js
PlankBevelen几秒前
手搓实现简易版 Vue2 响应式系统
前端
LoveDreaMing3 分钟前
MCP入门梳理
前端·typescript·mcp
小林攻城狮4 分钟前
一个基于 canvas 的 pdf 图片分页切割方法
前端·javascript
老华带你飞6 分钟前
学生宿舍管理|基于java + vue学生宿舍管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
一天前7 分钟前
一个功能强大的 React Native 拖拽排序组件库,支持单列和多列布局,提供流畅的拖拽体验和自动滚动功能
前端
OpenTiny社区7 分钟前
2025年OpenTiny年度人气贡献者评选正式开始
前端·javascript·vue.js
JosieBook10 分钟前
【Vue】04 Vue技术——Vue 模板语法详解:插值与指令
前端·javascript·vue.js
汤姆Tom12 分钟前
硬核指南:Volta —— 重新定义 JavaScript 工具链管理
前端·敏捷开发·命令行