简介
@lattebank/analytics.js-facade 是一个为了方便前端开发人员快速接入第三方统计工具所封装的 npm 包。此包可以帮助开发人员快速完成统计工具的接入和使用,减少了接入过程中出错的风险,提高了开发效率。
安装
使用 npm 安装:
npm install @lattebank/analytics.js-facade --save
使用
初始化
在使用 @lattebank/analytics.js-facade 之前,需要先引入依赖的第三方统计工具。初始化会检查第三方统计工具是否已经引入,如果没有引入则会抛出异常。
import AnalyticsFacade from '@lattebank/analytics.js-facade'; AnalyticsFacade.init({ // 初始化 tool: 'baidu', // 第三方统计工具类型 id: '', // 统计工具ID debug: false, // 是否开启debug模式,默认为false });
目前所支持的第三方统计工具类型包括:
- 百度统计 - 'baidu'
- Google Analytics - 'ga'
- 微信小程序统计 - 'wxapp'
- 友盟统计 - 'umeng'
统计事件
我们可以使用以下代码进行统计:
AnalyticsFacade.track({ event: 'button_click', // 事件名称 params: { // 事件参数,可以为空 label: 'test', }, });
页面统计
我们可以使用以下代码进行页面的统计:
AnalyticsFacade.logPageview({ page: '/home', // 页面路径 params: { // 页面参数,可以为空 label: 'test', }, });
自定义事件
如果第三方统计工具对应的API不在 @lattebank/analytics.js-facade 中,默认情况下已经集成了一些常用事件的统计,开发者也可以自定义事件,统一通过 @lattebank/analytics.js-facade 来进行事件的触发。
首先,我们需要定义一个事件:
-- -------------------- ---- ------- ----------------------------------- - - ----- --------------- -- ---- ------- - -- ---- ------ - --------- ----- ----- --------- -------- --- -- -- --展开代码
然后就可以通过以下代码进行自定义事件的触发:
AnalyticsFacade.trackEvent('button_click', { label: 'test', });
示例代码
-- -------------------- ---- ------- ------ --------------- ---- --------------------------------- -- --- ---------------------- ----- -------- -- --------- --- --- -- ------ ------ ------ -- -------------------- --- -- ---- ----------------------------- ----- -------- -- ---- ------- - -- --------- ------ ------- -- --- -- ---- ----------------------- ------ --------------- -- ---- ------- - -- --------- ------ ------- -- --- -- ----- ----------------------------------- - - ----- --------------- -- ---- ------- - -- ---- ------ - --------- ----- ----- --------- -------- --- -- -- -- ------------------------------------------ - ------ ------- ---展开代码
总结
通过 @lattebank/analytics.js-facade 包的封装,前端开发人员可以更方便、快速地接入第三方统计工具,提高开发效率,减少出错的风险。在实际开发中,开发者可以根据自己的需求,结合现有的事件和自定义事件来完成相应的统计工作。如果有问题或建议欢迎提出。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/85441