内容简介:目前主流的埋点方案包括 在需要埋点的节点调用接口,携带数据上传。如百度统计等;
主流埋点方案
目前主流的埋点方案包括
- 代码埋点
- 可视化埋点
- 无埋点
一、代码埋点
在需要埋点的节点调用接口,携带数据上传。如百度统计等;
缺点
工作量较大,每一个组件的埋点都需要添加相应的代码,入侵业务代码,增加项目复杂度。
二、可视化埋点
通过可视化交互的手段,代替代码埋点。将业务代码和埋点代码分离,提供一个可视化交互的页面,输入为业务代码,通过这个可视化系统,可以在业务代码中自定义的增加埋点事件等等,最后输出的代码耦合了业务代码和埋点代码。
可视化埋点听起来比较高大上,实际上跟代码埋点还是区别不大。也就是用一个系统来实现手动插入代码埋点的过程。
缺点:
业务属性数据,例如,订单号、金额、商品数据量等,通常要调用后台的接口,可视化埋点在这方面的支持有限;
需要借助第三方 工具 实现。
三、无埋点
无埋点并不是说不需要埋点,而是全部埋点,前端的任意一个事件都被绑定一个标识,所有的事件都别记录下来。通过定期上传记录文件,配合文件解析,解析出来我们想要的数据,并生成可视化报告供专业人员分析因此实现“无埋点”统计。
缺点
无法灵活的定制各个事件所需要上传的数据
无埋点采集全量数据,给数据传输和服务器增加压力
代码埋点分类
代码埋点分为 命令式埋点和声明式埋点
命令式埋点
顾名思义,开发者需要手动在需要埋点的节点处进行埋点。如点击按钮或链接后的回调函数、页面ready时进行请求的发送。大家肯定都很熟悉这样的代码:
// 页面加载时发送埋点请求 $(document).ready(function(){ // ... 这里存在一些业务逻辑 sendRequest(params); }); // 按钮点击时发送埋点请求 $('button').click(function(){ // ... 这里存在一些业务逻辑 sendRequest(params); });
声明式埋点
声明式埋点对命令式埋点做了改进,将埋点的代码与具体的业务逻辑解耦。从而提高埋点的效率和代码的可维护性。代码如下:
// key表示埋点的唯一标识;act表示埋点方式 <button v-log="{caption:'登录页', paras: '用户点击验证码发送'}">发送验证码</button>
因为项目采用Vue框架,所以使用Vue中的 自定义指令 完成声明式埋点。
Vue.directive('log', { bind( el, binding ){ el.addEventListener('click', ()=>{ Axios.post }) } });
只需要在需要记录的组件中配置使用v-log指令,加上详情参数就可以完成用户轨迹记录。如下:
// caption表示埋点的模块;paras表示用户的行为 <button v-log="{caption:'登录页', paras: '用户点击验证码发送'}">发送验证码</button>
以上所述就是小编给大家介绍的《Vue项目代码埋点》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- android 一套代码多用 以及 多套代码用于一个项目
- 如何向开源项目贡献代码
- golang项目代码重构(一)
- git管理复杂项目代码
- golang项目代码重构(二)
- Filecoin 项目代码库公开
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
C语言程序设计现代方法
K. N. King / 人民邮电出版社 / 2007-11 / 55.00元
《C语言程序设计现代方法》最主要的一个目的就是通过一种“现代方法”来介绍C语言,实现客观评价C语言、强调标准化C语言、强调软件工程、不再强调“手工优化”、强调与c++语言的兼容性的目标。《C语言程序设计现代方法》分为C语言的基础特性。C语言的高级特性、C语言标准库和参考资料4个部分。每章都有“问与答”小节,给出一系列与本章内容相关的问题及其答案,此外还包含适量的习题。一起来看看 《C语言程序设计现代方法》 这本书的介绍吧!