lz-event-tracking
v2.0.3
Published
陆泽科技C端页面埋点sdk
Downloads
38
Readme
[toc]
陆泽科技 C端用户页面埋点SDK
一、安装依赖
$ cd <project-name>
$ npm i -S lz-event-tracking
二、使用方法
1. 京东埋点封装后版本
1.1 引入
import JDEvent from 'lz-event-tracking/lib/jd';
1.2 初始化
京东埋点需要在调用具体方法之前进行初始化,具体方法如下
JDEvent.init();
初始化中,完成一下动作
在window对象中设置的京东埋点所需的jap,默认的 siteId 是 JA2019_2132395,现阶段所有的陆泽产品京东回流的 siteId 都是这个。如果需要要变更 siteId,可以在init方法传入参数:
JDEvent.init(siteId);
猜测下面加载的京东脚本需要 siteId 和 autoLogPv 的信息进行初始化。
返回加载京东脚本的 Promise
1.3 上报PV
JDEvent.reportEnter({
shopId:'', // 店铺id值,店铺点击时传
pin: '', // 当isv可以获取加密的京东用户pin时,上报。
activityId: '', // (必传)当前页面活动id(调用JOS创建活动接口返回的活动id)
activityType: '', // (必传)当前活动类型(调用JOS创建活动接口时传的type值)
channel: '', // (必传)当前打开的宿主环境渠道,channel 为固定值,见下方
shareUserId: '', // 分享助力场景时,分享人的标识(主态参与时,此标识为空,客态参与时,传主态人的标识)
})
channel取值如下:
app:京东APP koi_applet:锦鲤圈小程序 gouwu_applet:京东购物小程序 qq:QQ渠道 wechat_h5:微信H5
1.4 上报click
JDEvent.reportClick({
eventId: string, // 详情如下
skuId: '', // 如果是浏览商品需要传入skuId
})
京东埋点eventId: join:参与按钮点击事件 share:分享按钮点击事件 assist:助力按钮点击事件 v_shop:浏览店铺点击事件 v_sku:浏览商品点击事件 v_channel:浏览频道点击事件 f_shop:关注店铺点击事件 f_sku:关注sku点击事件 add_car:加购点击事件 like:点赞点击事件 evaluate:评论点击事件
2. 陆泽大数据版本
3. VUE2.0版本
3.1 初始化
// main.js
import Vue from 'vue';
import App from './App.vue';
import LzVue2Event from 'lz-event-tracking/lib/vue';
// vue 版本以来vue和axios,需要在安装的时候传入配置项中
Vue.use(LzVue2Event, {
env: 'test', // test - 测试, prod - 正式
platform: 'JD', // JD、SUNING、…………
sys: 'Test App', // 系统来源,例如:interact - 营销子系统, decoration - 装修子系统,不可以为空
appName: 'This is appName', // 应用名称:crm - 云鹿, cjwx - 超级无线,不可以为空
baseUrl: 'https://et.dianpusoft.cn/event/api', // 网络请求的baseUrl
})
3.2 设置基础信息
LzVue2Event.setBaseInfo({
shopId: 'shopId001', // 店铺标识,不可以为空
customerId: 'customerId001', // C端用户唯一身份标识customerId,不可以为空
nickName: 'nickName001', // 用户昵称,不可以为空
luze: {
version: 'home_version', // 版本号,可以为空
versionName: 'home_versionName', // 版本名称,可以为空
nodeId: 'home_nodeId', // 页面的节点ID,参见:https://lucidata.yuque.com/staff-qvc012/yyknyp/ougm8i#Og6s
},
jd: {
pin: '', // 当isv可以获取加密的京东用户pin时,上报。 (userpin与openid 二选一)
activityId: '', // (必传)当前页面活动id(调用JOS创建活动接口返回的活动id)
activityType: '', // (必传)当前活动类型(调用JOS创建活动接口时传的type值) 【本次新增】
channel: '', // (必传)当前打开的宿主环境渠道,channel 为固定值,见下方channel对应表
shareUserId: '', // 分享助力场景时,分享人的标识(主态参与时,此标识为空,客态参与时,传主态人的标识)
}
})
jd.channel:
app:京东APP koi_applet:锦鲤圈小程序 gouwu_applet:京东购物小程序 qq:QQ渠道 wechat_h5 微信H5
3.3 路由信息
// 路由文件
import VueRouter from 'vue-router';
export default new VueRouter({
routes: [{
path: '/',
name: 'Home',
component: () => import('../views/Home.vue'),
meta: {
moduleId: 'home_moduleId', // 模块ID,可以为空
pageId: 'home_pageId', // 页面ID,可以为空
nodeId: 'home_nodeId', // 节点ID,可以为空,参见:https://lucidata.yuque.com/staff-qvc012/yyknyp/ougm8i#Og6s
pageType: 2, // 页面类型 可以为空 0 - 不具名、位置类型,1 - 资产活动,2 - 互动活动,3 - 会员中心,4 - 自定义页面,5 - 预览页面
version: 'home_version', // 版本号,可以为空
versionName: 'home_versionName', // 版本名称,可以为空
}
},
// 埋点需要采集活动的activityId,SDK会自动解析route的query和params中是否包含activityId
// 活动页面需要在query或者params中添加activityId
{ // query方式 /qActivity?activityId=a12345
path: '/qActivity',
name: 'Activity',
meta: {
moduleId: 'query_activity_moduleId',
pageId: 'query_activity_pageId',
nodeId: 'query_activity_nodeId',
pageType: 2,
version: 'query_activity_version',
versionName: 'query_activity_versionName',
},
component: () => import('../views/QueryActivity.vue')
}, { // params的方式 /qActivity/a12345
path: '/pActivity/:activityId',
name: 'Activity',
meta: {
moduleId: 'params_activity_moduleId',
pageId: 'params_activity_pageId',
nodeId: 'params_activity_nodeId',
pageType: 2,
version: 'params_activity_version',
versionName: 'params_activity_versionName',
},
component: () => import('../views/ParamsActivity.vue')
}]
})
3.4 点击元素
- 普通元素
<!-- 需要埋点的元素,要在标签上添加指令 v-li-click 值为元素的elementId,数据上报后可根据elementId获取点击的统计数据 -->
<!-- ⚠️指令后面的elementId需要使用引号包裹 -->
<router-link v-lz-click=" 'elementId-home' " to="/">Home</router-link>
<router-link v-lz-click=" 'elementId-about' " to="/about">About</router-link>
<!-- 若按钮为重要按钮,可以添加isMain修饰符 -->
<van-button type="primary" v-lz-click.isMain="'elementId-mainButton'" >主要按钮</van-button>
<!-- 若按钮为重要按钮,可以添加isMain修饰符 -->
<van-button type="primary" v-lz-click.isMain="'elementId-mainButton'" v-lz-skuid="'skuid'">查看商品</van-button>
- 装修楼层
<!-- 装修楼层除了正常的点击信息以外还要表示楼层信息,信息包括 -->
<!-- id:楼层id -->
<!-- type:楼层类型 -->
<!-- order:楼层序号 -->
<Floor v-for="i in 100" :key="i"
v-lz-click.isMain="`elementId-floor${i}`"
v-lz-skuid="'skuid'"
v-lz-floor="{
id: `floorId${i}`,
type: `floorType${i}`,
order: i,
}"/>
elementId 的使用参照埋点操作节点定义
3.5 滚动元素
<!-- 如果在初始化的时候设置了scrollOnBody为false,则需要在页面最外层的可以滚动的元素上添加指令v-lz-scroll -->
<div id="app" v-lz-scroll>
...
</div>
三、变更履历
2.0.3
- 移除了对accessReferer字段的校验
2.0.2
- install的时候添加环境参数baseUrl
2.0.0
- 上报数据类型校验
- 京东埋点数据回流集成
1.0.16
- 欧莱雅c端域名添加到独立域名列表
1.0.15
- 独立域名上报,baseUrl修正
1.0.14
- 页面离开上报不触发问题修复
- 调整了页面滚动上报的逻辑和时机
1.0.13
- 在setBaseInfo中添加nodeId
1.0.12
- 进入页面无数据上报问题修正
1.0.11
- nickname上报问题修正
1.0.10
- pageType 默认值设定
- install的时候添加环境参数env(test - 测试环境,prod - 正式环境)
1.0.9
- setBaseInfo中可以写入version/versionName
1.0.8
- nickName获取错误问题地修正
1.0.7
- moduleId对应记录templateId,从链接中获取
1.0.6
- 滑动买点的上报信息中添加appname