{"dist":{"shasum":"15c90b97f2255de33e471d42b795e16b7b7f6bc4","tarball":"https://registry.npmjs.org/kc-log/-/kc-log-1.8.0-beta1.tgz","fileCount":15,"integrity":"sha512-irh5kqsq588ux3B34oJJa6X68pvK5xnzJwC83J2/iMZWq0pgrupPE5nTamc+0L9pJUjcb8TjVDwtPGNxSp+3+w==","signatures":[{"sig":"MEUCIAZo56Sc5BRlyQHDpQO42ZD+EbeIiQoRAsEBerpNxspwAiEA+uAyevlP0cteiOjnJREzZ7d+zE1YrbcQnQ1OWaHKN3c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110373,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZXEsCRA9TVsSAnZWagAAua4QAIGmiRTwyx136h3hvCUJ\nJclX2Lzvf+rOvGU8WYkfwN4ZfX5acvVsakTECznjRpCaO6FPoWAlwjyUInJi\nQsrOCbqSzEAYU/4PqcnozypSoPWDOOcmXWfzv0afGhnCxtQTcnXA01L6DLh2\nGf/fx/SloQt9u2GcTf7oF6yXaS4HWbiFgLh7U9boOrA3/Tz/BkGAven3AWfn\nlP+Txc9fjrmejsyPQf2tBcv+cjchLeFP1XRa8Gr+bxU9pgn/K9QDmHwBwYnD\nj7oyJzOWu46wuVFbgvMZZl56x/T2elifXxTciwzD+fHKt217cQwkX7Zi6z49\nNdro5KzDKeofexZXVsXpGhxdqGv5ui3mDQlqgtDMRcK/UCreZ87MflTZdQjx\nGBB5EQ8/7InY01lVxc6aAMnjQcCl15x0ROxxpC4V+UcrpIcHLp0h/h+Tnt1X\n7PBwiKU4HEGeayQTkYjghRYy1XHLweglsP1ebzfLADTIqlyc+rFGedlTv7rO\nFfXRGQ6KxdNN8igcR+RjGmaTmT1IPLCACTz8JX/y3SKEGY4K/QjKIb5yIGxJ\njGYjqTH04Qhno+2+MeLB2Vg0GIjy3Pq1nl7XHo6/GhWkL/3aprm5upC+yKYy\naa7H9kFXIags4UUpsiZfgQzJ9/RqZHCwnuTo5cVsJMBYRdoIGeOR+iZpdqta\nQT7G\r\n=tHwf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/kc-log.js","name":"kc-log","author":{"name":"Haobo.liu"},"readme":"# 基础业务打点组件\n***本文档的作用在于说明基础业务打点组件使用方式及注意事项，任何人都可以维护此文档，但请确保文档内容正确合理性***  \n打点组件使用js实现，其本质是jssdk，提供多种打点方式，建议所有FE打点需求均采用本组件（SDK）实现。\n## 1.安装\n### 直接`<script>`标签引入\n直接下载并引入打点组件的脚本，会自动根据当前采用的模块加载方式引入打点，如没有采用模块化加载工具，则打点组件将注册到全局变量`window`下。\n### NPM\n本组件已维护在`npm`官方库中，使用者可以通过`npm`相关命令进行安装，支持被符合`UMD`（`AMD` ，`CMD` 或 `CommonJS` 的 require）规范的模块化加载工具所调用。\n```\n # 最新稳定版  \n $ npm install kc-log\n```\n\n## 2.使用\n组件提供3种打点调用方式，分别是**send方法**、**模版展示标记**、**超链接点击标记**。\n> **pagename参数是页面唯一标示，请开发者尤其注意，不同页面的pagename不能重复**。\n> 除了业务数据以外，一般情况下，还需要使用者提供‘category’（日志类型）和‘name’（事件名称）参数；及个别情况下，还需要使用者提供‘firstrefer’（最早流量入口）。以上具体细节说明，参见[相关Wiki文档](http://wiki.xuanke.com/pages/viewpage.action?pageId=2296043)。\n\n### （1）send方法\nsend方法为组件最基础的打点api，使用者只需在想要进行打点的位置/时机调用此方法传递对应附带参数（数据）即可。\n\n```\nvar kcLog = require('kc-log');\n\nkcLog.send({\n   category: 'webClick', // 必传值，如果pm没有给则需让pm补充给出\n   name: 'bannerClick',  // 必传值，如果pm没有给则需让pm补充给出\n   firstrefer: {\n     keel: true,\n     value: 'banner'\n   }\n});\n```\n> 事实上，其他三种打点方式，最终也会调用该方法进行打点。\n\n### （2）模版展示标记\n考虑到模版展示打点（也就是pv）几乎覆盖所有流程页面，因此提供一种在特定模版节点添加标记到方式来进行打点，**所有页面展示点必须（MUSTBE）通过该方式打点**，具体使用方式如下：\n> 所有页面展示点必须（MUST BE）使用该方式进行打点的原因是组件内部对页面展示点做了特殊处理，实际上绝大部分情况下（非第一次访问的页面），每个页面展示点都会进行两次打点，分别是当前页面进和上一页面出。  \n\n```\n<html>\n  <head></head>\n  <body kc-log-page-show=\"courseId=1&payId=1\"></body>\n</html>\n```\n首先如果一个模版需要打展示点，则先为其`<body>`标签添加`kc-log-page-show`属性，再添加属性值代表打点参数（数据）即可，**不过需要注意的`kc-log-page-show`的值需为（MUST BE）url query格式的字符串（即每组键值对间用‘&’分隔，键和值用‘=’分隔），且千万确保(MUST BE)模版已经引入打点组件脚本，否则本次模版展示点将无法获取**。\n### （3）超链接点击标记\n提供这种打点方式的原因是目前项目中存在一些没有JavaScript脚本逻辑的静态页面，且页面上会有一些用超链接控制的跳转逻辑，而如果单单为了打点而为这些页面补充脚本逻辑，未免有些画蛇添足，那么，具体使用方式如下：\n```\n<a href=\"https://www.kaochong.com\" kc-log-ele-click=\"courseId=1&price=1\"></a>\n```\n具体含义参加**模版展示标记**\n","gitHead":"551297a76f9c89fff3b8305c412ec345065ac88c","license":"MIT","scripts":{"test":"test","build":"webpack --config webpack.config.js"},"_npmUser":{"name":"moxmi","email":"haobo.liu@yahoo.com"},"keywords":["考虫","打点","组件"],"repository":{"url":"git@gitlab.xuanke.com:kaochong-fe/kc-log.git","type":"git"},"_npmVersion":"5.6.0","description":"This is a kaochong logger component sdk.","directories":{},"maintainers":[{"name":"moxmi","email":"haobo.liu@yahoo.com"}],"_nodeVersion":"8.11.4","dependencies":{"babel-plugin-transform-runtime":"^6.23.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"webpack":"^4.29.6","vconsole":"^3.3.2","babel-core":"^6.26.3","webpack-cli":"^3.2.3","babel-loader":"^7.1.2","babel-polyfill":"^6.26.0","babel-preset-env":"^1.7.0","babel-preset-stage-2":"^6.24.1","babel-plugin-transform-object-assign":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/kc-log_1.8.0-beta1_1617260844463_0.3434005687238981","host":"s3://npm-registry-packages"},"_id":"kc-log@1.8.0-beta1","version":"1.8.0-beta1"}