单页面vue引入百度统计的使用方法示例详解


Posted in Javascript onOctober 13, 2018

前言

最近组长安排着做一个项目,h5的应用下载项目,想着做起来还是比较容易,可是看到提出的需求,我就有点懵逼了!需要对应用的下载进行统计!!!我当时就想着我前端怎么对页面点击按钮就行数据统计啊!我以前的项目也有对应用的下载量就行数据统计的,可是那些项目都是后台人员编写进行数据统计的。我当时就有点不知所措了。想着怎么进行统计,怎么搞定这个!百度得知,百度统计可以帮着解决这个问题,可是没有用过啊!硬着头皮,进入自己的踩坑之旅!

方法如下

1、首先还是先在百度统计注册账号,并且新增网站,设置网站域名。如下:

单页面vue引入百度统计的使用方法示例详解

2、在自己构建的vue项目中,引入vue-ba

npm install --save vue-ba

然后在main.js中引入:

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import ba from 'vue-ba'
import './assets/css/normalize.css'
Vue.config.productionTip = false;
Vue.use(ba, "175015a6227dca437e13abb9a6e845ac");
Vue.use(ba, { siteId: "175015a6227dca437e13abb9a6e845ac" });


/* eslint-disable no-new */
new Vue({
 el: '#app',
 components: { App },
 template: '<App/>'
})

siteId让我找了蛮久,刚开始有误操作:

单页面vue引入百度统计的使用方法示例详解

刚开始以为这个就是siteId=12603119,可是使用这个siteId没有效果,后来才得知,siteId是在这里:管理->获取代码

单页面vue引入百度统计的使用方法示例详解

单页面vue引入百度统计的使用方法示例详解

在上图的红线框内,才是这个域名下的siteId,使用正确的siteId之后,就验证是否正确引入,就进行代码检查:管理->代码检查

单页面vue引入百度统计的使用方法示例详解

单页面vue引入百度统计的使用方法示例详解

点击开始检查,如果你的网址就是此处的网站首页,就会出来检查结果,如果你的网址与这里的网站首页地址不一样,你就把你的网址输入在"其他网页"这一栏,点击开始检查,就会出现以下结果

单页面vue引入百度统计的使用方法示例详解

这样就证明你的引入成功!

还有一种手动检查的方法,就是在chrome浏览器中输入你的网址,按F12,调试模式,按Network,如果找到了hm.js?xxxxxx这个文件,也说明你的代码引入成功,如下:

单页面vue引入百度统计的使用方法示例详解

3、siteId配置成功之后,就需要在你的html内对点击事件等进行监测了。vue-ba这款插件有详细的使用方法,我就不介绍使用了,我就写我使用到的。详细的使用地址:https://github.com/minlingchao1/vue-ba

我就只用到了trackEvent这个api,vue-ba 提供 track-event,track-pageview 两个指令,我们可以直接在 html 模版中使用来统计网站数据。

3.1 track-event 

使用指令 v-track-event 监听事件, 通过 modifiers 指定事件类型,将自动为绑定元素添加事件监听,当事件触发调用统计代码。 如不指定事件,默认监听 click 事件。可通过逗号分隔的字符串或对象字面量传递参数,以字符串传递时请注意参数顺序,可参考trackEvent API。

用法:

<button v-track-event.click="'category, action''"></button> // 统计click事件

<button v-track-event="'category, action'"></button> // 统计click事件简写

<input v-track-event.keypress="'category, action'"> // 统计keypress事件

<button v-track-event="'category, action, opt_label, opt_value'"><button> // 以字符串传递参数

<button v-track-event="{category:'event', action:'click'}"></button> // 以对象字面量传递参数

3.2 track-pageview

使用指令 track-pageview 统计虚拟 PV ,一般可以配合 v-show 或 v-if 来统计局部动态视图的 PV。可通过逗号分隔的字符串或对象字面量传递参数,以字符串传递时请注意参数顺序,可参考trackPageview API 用法

<div v-show="show" v-track-pageview="'/bar'">bar</div> // 跟踪 v-show 绑定元素的虚拟pv

<div v-if="show" v-track-pageview="'/foo'">foo</div> // 跟踪 v-if 绑定元素的虚拟pv

<div v-track-pageview="'/tar'"></div> // 以字符串指定受访页面和来源

<div v-track-pageview="{pageURL:'/zoo''}"></div> // 以对象字面量指定受访页面和来源

我在app.vue中的使用:

<div class="swiper-container swiper-container1">
  <swiper class="swiper-wrapper" :options="bannerOptions" ref="bannerSwiper">
   <swiper-slide class="swiper-slide" v-for="(item,index) in banner" :key="index">
    <a class="swiper-link" :href="item.link" v-track-event="{category:'download', action:'click',opt_label: item.link}" >
     <img class="container1-img" :src="item.icon" :alt="item.desc"/>
    </a>
   </swiper-slide>
  </swiper>
 </div>
<div class="list-download">
 <a :href="item.packagename" v-track-event="{category:'download', action:'click',opt_label: item.packagename}">下载</a>
 </div>

通过这种方法,就可以让你在百度统计里面看到你想要统计的数据。但是这种统计的结果不会很快就出来,需要过一段时间,两三个小时是需要的。我也等了将近3个小时,才看到统计的结果。

单页面vue引入百度统计的使用方法示例详解

4、总算是大功告成了,虽然百度统计里面可能还是还有蛮多没有吃透,但是先把项目完成才是最重要的,接下来的就是慢慢去搞。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
使用js判断当前时区TimeZone是否是夏令时
Feb 23 Javascript
按钮接受回车事件的三种实现方法
Jun 06 Javascript
js实现仿微博滚动显示信息的效果
Dec 21 Javascript
深入理解Ajax的get和post请求
Jun 02 Javascript
jQuery ajaxForm()的应用
Oct 14 Javascript
AngularJS实现在ng-Options加上index的解决方法
Nov 03 Javascript
用vue和node写的简易购物车实现
Apr 25 Javascript
Three.js利用dat.GUI如何简化试验流程详解
Sep 26 Javascript
原生JavaScript实现todolist功能
Mar 02 Javascript
opencv 识别微信登录验证滑动块位置
Aug 07 Javascript
vue router总结 $router和$route及router与 router与route区别
Jul 05 Javascript
微信小程序仿今日头条导航栏滚动解析
Aug 20 Javascript
详解解决Vue相同路由参数不同不会刷新的问题
Oct 12 #Javascript
详解webpack loader和plugin编写
Oct 12 #Javascript
深入理解Angularjs 脏值检测
Oct 12 #Javascript
vue中render函数的使用详解
Oct 12 #Javascript
详解Vue的常用指令v-if, v-for, v-show,v-else, v-bind, v-on
Oct 12 #Javascript
Vue插值、表达式、分隔符、指令知识小结
Oct 12 #Javascript
Vue中 v-if 和v-else-if页面加载出现闪现的问题及解决方法
Oct 12 #Javascript
You might like
处理(php-cgi.exe - FastCGI 进程超过了配置的请求超时时限)的问题
2013/07/03 PHP
php解析字符串里所有URL地址的方法
2015/04/03 PHP
PHP获得数组交集与差集的方法
2015/06/10 PHP
php基本函数汇总
2015/07/09 PHP
CI框架实现优化文件上传及多文件上传的方法
2017/01/04 PHP
php简单读取.vcf格式文件的方法示例
2017/09/02 PHP
php 中self,this的区别和操作方法实例分析
2019/11/04 PHP
IE DOM实现存在的部分问题及解决方法
2009/07/25 Javascript
在浏览器窗口上添加遮罩层的方法
2012/11/12 Javascript
jquery实现控制表格行高亮实例
2013/06/05 Javascript
jquery实现的网页自动播放声音
2014/04/30 Javascript
nodejs 实现模拟form表单上传文件
2014/07/14 NodeJs
javascript的BOM汇总
2015/07/16 Javascript
深入剖析javascript中的exec与match方法
2016/05/18 Javascript
JavaScript三种绑定事件方式及相互之间的区别分析
2017/01/10 Javascript
基于JavaScript实现前端数据多条件筛选功能
2020/08/19 Javascript
react native基于FlatList下拉刷新上拉加载实现代码示例
2018/09/30 Javascript
详解Python判定IP地址合法性的三种方法
2018/03/06 Python
python实现QQ批量登录功能
2019/06/19 Python
Python3 hashlib密码散列算法原理详解
2020/03/30 Python
解决Keras中循环使用K.ctc_decode内存不释放的问题
2020/06/29 Python
Python类成员继承重写的实现
2020/09/16 Python
HTML5样式控制示例代码
2013/11/27 HTML / CSS
Html5无刷新修改browser Url的方法
2014/01/15 HTML / CSS
比利时网上药店: Drogisterij.net
2017/03/17 全球购物
英国时尚服饰电商:Boohoo
2017/10/12 全球购物
BSTN意大利:德国街头和运动文化高品质商店
2020/12/22 全球购物
化学相关工作求职信
2013/10/02 职场文书
语文教育专业应届生求职信
2013/11/23 职场文书
机关门卫制度
2014/02/01 职场文书
最新奶茶店创业计划书范文
2014/02/08 职场文书
公司授权委托书
2014/04/04 职场文书
2014年学生会工作总结
2014/11/07 职场文书
2015人事行政工作总结范文
2015/05/21 职场文书
单位证明范文
2015/06/18 职场文书
辞职申请书范本
2019/05/20 职场文书