0.0.4 • Published 2 years ago
mql-web-report v0.0.4
koznak-report
大数据上报
安装
npm i mql-web-report -S
示例 🌰
import ReportSdk from "mql-web-report";
const reportSdk = ReportSdk.getReportSdk("appKey", {
userId: "",
version: "",
tocken: "",
deviceId: "",
carrier: "",
});
// 心跳事件
reportSdk.reportHeart();
// 浏览事件
reportSdk.reportPage({
pageId: "",
pageName: "",
eventId: "",
eventType: "",
});
参数
字段 | 说明 | 类型 | 是否必穿、默认值 |
---|---|---|---|
appKey | 大数据唯一标识 | string | ✅ |
userInfo | 用户信息 | UserInfo | ✅ |
env | 环境 | "test | "product" | 可为空、默认"test" 测试环境 |
UserInfo
字段 | 说明 | 类型 |
---|---|---|
userId | 唯一标识 | string |
tocken | 登陆令牌 | string |
version | 版本号 | string |
deviceId | 设备ID | string |
carrier | 运营商 | "Mobile" | "Unicom" | "Telecom" |"" |
方法
reportHeart 🔧
心跳事件
代码演示
import ReportSdk from "mql-web-report";
const reportSdk = ReportSdk.getReportSdk("appKey", {
userId: "",
version: "",
tocken: "",
deviceId: "",
carrier: "",
});
reportSdk.reportHeart();
返回类型
Promise<void>
reportPage 🔧
浏览事件
代码演示
import ReportSdk from "mql-web-report";
const reportSdk = ReportSdk.getReportSdk("appKey", {
userId: "",
version: "",
tocken: "",
deviceId: "",
carrier: "",
});
reportSdk.reportPage({
pageId: "",
pageName: "",
eventId: "",
eventType: "",
});
参数说明
ReportPageP
字段 | 说明 | 类型 | 是否比传 |
---|---|---|---|
pageId | 页面ID | string | ✅ |
pageName | 页面名称 | string | ✅ |
eventId | 事件ID | string | ✅ |
eventType | 事件类型 | string | ✅ |
dataMap | 自定义数据 | {[key:string]:any} | ❌ |
返回类型
Promise<void>
reportClick 🔧
点击事件
代码演示
import ReportSdk from "mql-web-report";
const reportSdk = ReportSdk.getReportSdk("appKey", {
userId: "",
version: "",
tocken: "",
deviceId: "",
carrier: "",
});
reportSdk.reportClick({
pageId,
targetId,
targetName,
targetType,
eventId,
eventType,
});
参数说明
ReportClickP
字段 | 说明 | 类型 | 是否比传 |
---|---|---|---|
pageId | 页面ID | string | ✅ |
pageName | 页面名称 | string | ✅ |
eventId | 事件ID | string | ✅ |
eventType | 事件类型 | string | ✅ |
targetType | 目标类型 | string | ✅ |
targetName | 目标类型 | string | ✅ |
dataMap | 自定义数据 | {[key:string]:any} | ❌ |
返回类型
Promise<void>
reportExposure 🔧
曝光事件
代码演示
import ReportSdk from "mql-web-report";
const reportSdk = ReportSdk.getReportSdk("appKey", {
userId: "",
version: "",
tocken: "",
deviceId: "",
carrier: "",
});
reportSdk.reportExposure({
pageId,
targetId,
targetName,
targetType,
eventId,
eventType,
});
参数说明
ReportExposureP
字段 | 说明 | 类型 | 是否比传 |
---|---|---|---|
pageId | 页面ID | string | ✅ |
pageName | 页面名称 | string | ✅ |
eventId | 事件ID | string | ✅ |
eventType | 事件类型 | string | ✅ |
targetType | 目标类型 | string | ✅ |
targetName | 目标类型 | string | ✅ |
dataMap | 自定义数据 | {[key:string]:any} | ❌ |
返回类型
Promise<void>
类型定义
import type {
Sdk,
Env,
ReportClickP,
ReportExposureP,
ReportPageP,
DataMap,
Target,
Event,
Page,
UserInfo,
} from "mql-web-report";
开发说明
目录结构
src
开发目录
文件名 | 说明 |
---|---|
config.ts | 配置文件 |
index.ts | 入口 |
reportSdk.ts | 大数据上报类 |
tools.ts | 工具库 |
type.ts | 类型集合 |
tests
测试目录
文件名 | 说明 |
---|---|
mock | 模拟上报数据 |
unit | 测试用例 |
ws | webSocket监听上报结果 |
.husky
Git钩子相关
dist
打包文件
脚本说明
- lint
ESlint代码语法校验、prettier代码格式校验并尝试自动修复
- tsc
TypeScript类型校验
- lint:commit
lint校验Git暂存区
- patch
npm包版本升级
- test
运行jest测试用例
- build
打包
- commit
git cz代码提交(用于commit信息约束)
- 其他
CI、publish脚本用于CI发版、prepare用户Git钩子初始化