Skip to content

Commit c56d161

Browse files
committed
[feat] 增加beforeTrack beforePageView beforePageClose beforeInit生命周期钩子
1 parent 56db79b commit c56d161

39 files changed

+668
-449
lines changed

.eslintcache

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@ node_modules/
55
yarn.lock
66
.log
77
bac
8-
vue-h5
8+
vue-h5
9+
.eslintcache

README.md

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,19 @@
1-
# [易观方舟](https://www.analysys.cn/) asd-javascript-sdk [![NPM version][npm-image]][npm-url] [![License](https://img.shields.io/github/license/analysys/ans-wechat-sdk.svg)](https://github.com/analysys/ans-wechat-sdk/blob/master/LICENSE) [![GitHub release](https://img.shields.io/github/release/analysys/ans-wechat-sdk.svg)](https://github.com/analysys/ans-wechat-sdk/releases)
1+
# [易观方舟](https://www.analysys.cn/) asd-javascript-sdk [![NPM version][npm-image]][npm-url] [![License](https://img.shields.io/github/license/analysys/ans-javascript-sdk.svg)](https://github.com/analysys/ans-wechat-sdk/blob/master/LICENSE) [![GitHub release](https://img.shields.io/github/release/analysys/ans-javascript-sdk.svg)](https://github.com/analysys/ans-javascript-sdk/releases)
22

33
## 安装
44

55
```sh
66
$ npm install asd-javascript-sdk --save
77
```
88

9-
## javascript SDK 基础说明
9+
## javascript SDK 说明
1010

1111
#### 快速集成
1212
##### 引入sdk模块并初始化
1313
```js
1414

1515
import AnalysysAgent from "asd-javascript-sdk"
1616

17-
// 引入加密模块(非必须)
18-
import AnalysysEncryption from 'asd-javascript-sdk/dist/AnalysysAgent_encryption.min.js';
19-
AnalysysAgent.encrypt = AnalysysEncryption;
20-
2117
//初始化
2218
AnalysysAgent.init({
2319
appkey: '',
@@ -29,29 +25,40 @@ AnalysysAgent.init({
2925

3026
参数 | 是否必须| 类型 | 默认值 | 说明
3127
--- | :--- | :--- | :--- | :---
32-
appkey | 是 | string | - | 在网站获取的AppKey
33-
uploadURL | 是 | string | - | 自定义上传地址
28+
appkey | 是 | string | - | 项目数据的唯一标识,在产品当中_ 数据接入管理 _模块获取的 AppKey
29+
uploadURL | 是 | string | - | 设置上传数据接口,在 _数据接入管理-集成SDK接入数据 _模块获取
30+
visitorConfigURL | 否 | string | - | 设置可视化配置获取接口
3431
debugMode | 否 | number | 0 | 0: 关闭调试模式;1 - 开启调试模式,数据不入库;2 - 开启调试模式,数据入库
32+
name | 否 | string | - | 设置 JS SDK 全局对象别名
33+
auto | 否 | boolean | true | 设置自动采集页面打开事件
3534
autoProfile | 否 | boolean | true | 设置是否追踪新用户的首次属性
36-
encryptType | 否 | number | 0 | 设置是否对上传数据加密:0 - 对上传数据不加密(默认);1 - 对上传数据进行AES 128位ECB加密;2 对上传数据进行AES 128位CBC加密
35+
autoTrack | 否 | boolean | false | 设置是否启用全埋点功能
36+
autoPageViewDuration | 否 | boolean | false | 是否采集页面离开事件
3737
allowTimeCheck | 否 | boolean | false | 设置是否开启时间校准
3838
maxDiffTimeInterval | 否 | number | 30 | 设置最大时间校准分为:30s(默认) ,当设置的时间差值小于他,将不开启校准。否则将会进行时间校准。假如设置成为负值,将默认为 30s。
39-
autoTrack | 否 | boolean | false | 设置是否开启全埋点,开启全埋点将会上报所有绑定(支持tab、longtab、longpress)事件,并上报$user_click 事件,设置data-content为采集的 $element_content、data-type为采集的 $element_type、data-name为采集的$element_name、id为采集的$element_id。不设置采集不到。不支持系统方法包括生命周期事件的上报,如果要采集tabbar切换,务必在注册Page的时候注册OnTabItemTap方法,否则采集不到。
40-
autoCompleteURL | 否 | boolean | true | 设置是否采集完整URL,true - 采集URL包括参数;false - 采集URL不包括参数
41-
autoPageViewDuration | 否 | boolean | false | 是否采集页面离开事件
42-
43-
> 通过以上步骤您即可验证SDK是否已经集成成功,更多Api使用方法参考:[易观方舟 wechat SDK 文档](https://docs.analysys.cn/ark/integration/sdk/wx/wxsdkcustom)
39+
autoHeatmap | 否 | boolean | false | 设置是否启用热图数据采集,即在产品当中可使用热图分析功能
40+
autoWebstay | 否 | boolean | true | 在开启热图功能(autoHeatmap设置为true)后,设置是否追踪页面滚动行为,即在产品当中可分析页面浏览深度
41+
hash | 否 | boolean | true | 设置检测 url hash 变化
42+
encryptType | 否 | number | 0 | 设置是否对上传数据加密:0 - 对上传数据不加密(默认);1 - 对上传数据进行AES 128位ECB加密;2 对上传数据进行AES 128位CBC加密
43+
pageProperty | 否 | object | - | 设置自动采集时页面自定义属性
44+
SDKFileDirectory | 否 | string | - | 设置可视化模块SDK与热图模块SDK存放目录
45+
sendType | 否 | string | img | 设置上传日志方式
46+
webstayDuration | 否 | number | 5小时,单位毫秒 | 设置追踪页面滚动行为时,最大停留时长
47+
cross_subdomain | 否 | boolean | false | 设置在二级域名下存储cookie
48+
sendDataTimeout | 否 | number | 10000,单位:毫秒 | 设置上报日志超时时间
49+
getDataTimeout | 否 | number | 10000,单位:毫秒 | 设置获取可视化埋点列表的超时时间
50+
trackList | 否 | String[] / () => boolean | - | 设置除默认可输出元素外的可触控元素列表
4451

45-
> 注意 SDK 可能不完全向前兼容,请查看版本更新说明 [Release及版本升级记录](https://github.com/analysys/ans-wechat-sdk/releases)。如果有说明不兼容的话,需要升级易观方舟对应的版本。 请根据需要前往 [Release](https://github.com/analysys/ans-wechat-sdk/releases) 里下载对应的文件
52+
> 注意 SDK 可能不完全向前兼容,请查看版本更新说明 [Release及版本升级记录](https://github.com/analysys/ans-javascript-sdk/releases)。如果有说明不兼容的话,需要升级易观方舟对应的版本。 请根据需要前往 [Release](https://github.com/analysys/ans-javascript-sdk/releases) 里下载对应的文件
4653
4754

4855
## 版本升级记录
49-
请参见 [Release及版本升级记录](https://github.com/analysys/ans-wechat-sdk/releases)
56+
请参见 [Release及版本升级记录](https://github.com/analysys/ans-javascript-sdk/releases)
5057

5158

5259

5360

54-
**禁止一切基于易观方舟 wechat 开源 SDK 的所有商业活动!**
61+
**禁止一切基于易观方舟 javascript 开源 SDK 的所有商业活动!**
5562

5663
---
5764

demo/jquery/sdk/5.0.2/AnalysysAgent_JS_SDK.amd.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

demo/jquery/sdk/5.0.2/AnalysysAgent_JS_SDK.es6.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

demo/jquery/sdk/5.0.2/AnalysysAgent_JS_SDK.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

demo/jquery/sdk/5.0.2/AnalysysAgent_JS_SDK_HEATMAP.min.css

Lines changed: 68 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,12 @@
1-
.ark-heat-click-element {
2-
position: absolute;
3-
left: 0;
1+
.ark-heatmap-location {
2+
position: absolute !important;
43
top: 0;
5-
height: 100%;
6-
width: 100%;
7-
background-color: #ff0000;
8-
color: #fff;
9-
text-align: center;
10-
font-size: 12px;
11-
z-index: 10000;
12-
line-height: 22px; }
13-
.ark-heat-click-element .ark-heat-click-element-text {
14-
display: block;
15-
overflow: hidden;
16-
white-space: nowrap;
17-
text-overflow: ellipsis;
18-
position: absolute;
19-
width: 100%;
20-
top: 50%;
21-
margin-top: -11px;
22-
text-align: center; }
23-
.ark-heat-click-element:hover .ark-heat-click-element-tips {
24-
display: block; }
25-
.ark-heat-click-element .ark-heat-click-element-tips {
26-
position: absolute;
27-
background-color: #252d39;
28-
font-size: 12px;
29-
display: none;
30-
top: 100%;
31-
top: calc(100% + 5px);
32-
font-size: 14px;
33-
padding: 10px 0;
34-
border-radius: 4px;
35-
left: 50%;
36-
transform: translate(-50%, 0);
37-
white-space: nowrap; }
38-
.ark-heat-click-element .ark-heat-click-element-tips::after {
39-
content: '';
40-
position: absolute;
41-
width: 0;
42-
height: 0;
43-
border-color: transparent;
44-
border-style: solid;
45-
top: 5px;
46-
left: 50%;
47-
margin-top: -10px;
48-
border-width: 0 7px 5px;
49-
border-bottom-color: #252d39;
50-
margin-left: -7px; }
51-
.ark-heat-click-element .ark-heat-click-element-tips .ark-click-num, .ark-heat-click-element .ark-heat-click-element-tips .ark-click-percent {
52-
display: inline-block;
53-
text-align: right;
54-
padding: 0 10px; }
55-
.ark-heat-click-element .ark-heat-click-element-tips .ark-click-num label, .ark-heat-click-element .ark-heat-click-element-tips .ark-click-percent label {
56-
display: block;
57-
color: #9cacbf; }
4+
left: 0;
5+
right: 0;
6+
bottom: 0;
7+
z-index: 10000; }
588

59-
.ark-headmap-body-element-none .ark-heat-click-element {
9+
.ark-headmap-body-location-none .ark-heatmap-location {
6010
display: none; }
6111

6212
.ark-headmap-loading, .ark-headmap-nodata {
@@ -124,17 +74,6 @@
12474
-ms-transform: rotate(360deg);
12575
transform: rotate(360deg); } }
12676

127-
.ark-heatmap-location {
128-
position: absolute !important;
129-
top: 0;
130-
left: 0;
131-
right: 0;
132-
bottom: 0;
133-
z-index: 10000; }
134-
135-
.ark-headmap-body-location-none .ark-heatmap-location {
136-
display: none; }
137-
13877
.ark-heatmap-head {
13978
position: fixed;
14079
left: 0;
@@ -425,6 +364,67 @@
425364
.ark-heatmap-head-handle #arkHeatmapSwitch, .ark-heatmap-head-handle #arkHotEleList, .ark-heatmap-head-handle #arkHeatDisplayConfig, .ark-heatmap-head-handle #arkConditionList {
426365
display: none !important; } }
427366

367+
.ark-heat-click-element {
368+
position: absolute;
369+
left: 0;
370+
top: 0;
371+
height: 100%;
372+
width: 100%;
373+
background-color: #ff0000;
374+
color: #fff;
375+
text-align: center;
376+
font-size: 12px;
377+
z-index: 10000;
378+
line-height: 22px; }
379+
.ark-heat-click-element .ark-heat-click-element-text {
380+
display: block;
381+
overflow: hidden;
382+
white-space: nowrap;
383+
text-overflow: ellipsis;
384+
position: absolute;
385+
width: 100%;
386+
top: 50%;
387+
margin-top: -11px;
388+
text-align: center; }
389+
.ark-heat-click-element:hover .ark-heat-click-element-tips {
390+
display: block; }
391+
.ark-heat-click-element .ark-heat-click-element-tips {
392+
position: absolute;
393+
background-color: #252d39;
394+
font-size: 12px;
395+
display: none;
396+
top: 100%;
397+
top: calc(100% + 5px);
398+
font-size: 14px;
399+
padding: 10px 0;
400+
border-radius: 4px;
401+
left: 50%;
402+
transform: translate(-50%, 0);
403+
white-space: nowrap; }
404+
.ark-heat-click-element .ark-heat-click-element-tips::after {
405+
content: '';
406+
position: absolute;
407+
width: 0;
408+
height: 0;
409+
border-color: transparent;
410+
border-style: solid;
411+
top: 5px;
412+
left: 50%;
413+
margin-top: -10px;
414+
border-width: 0 7px 5px;
415+
border-bottom-color: #252d39;
416+
margin-left: -7px; }
417+
.ark-heat-click-element .ark-heat-click-element-tips .ark-click-num, .ark-heat-click-element .ark-heat-click-element-tips .ark-click-percent {
418+
display: inline-block;
419+
text-align: right;
420+
padding: 0 10px; }
421+
.ark-heat-click-element .ark-heat-click-element-tips .ark-click-num label, .ark-heat-click-element .ark-heat-click-element-tips .ark-click-percent label {
422+
display: block;
423+
color: #9cacbf; }
424+
425+
.ark-headmap-body-element-none .ark-heat-click-element {
426+
display: none; }
427+
428428
.ark-page-line {
429429
z-index: 5002;
430430
position: absolute;

demo/react/public/sdk/5.0.2/AnalysysAgent_JS_SDK.amd.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

demo/react/public/sdk/5.0.2/AnalysysAgent_JS_SDK.es6.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

demo/react/public/sdk/5.0.2/AnalysysAgent_JS_SDK.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)