单页面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 相关文章推荐
Javascript document.referrer判断访客来源网址
May 15 Javascript
javascript 正则表达式相关应介绍
Nov 27 Javascript
实现web打印的各种方法介绍及实现代码
Jan 09 Javascript
轻松实现jquery手风琴效果
Jan 14 Javascript
javascript中利用柯里化函数实现bind方法【推荐】
Apr 29 Javascript
canvas实现爱心和彩虹雨效果
Mar 09 Javascript
AngularJS中$http使用的简单介绍
Mar 17 Javascript
js省市区级联查询(插件版&amp;无插件版)
Mar 21 Javascript
Vue.js项目模板搭建图文教程
Sep 20 Javascript
JS实现带导航城市列表以及输入搜索功能
Jan 04 Javascript
vue根据值给予不同class的实例
Sep 29 Javascript
vue中使用protobuf的过程记录
Oct 26 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常用正则表达式的整理汇总
2013/06/08 PHP
全面解读PHP的Yii框架中的日志功能
2016/03/17 PHP
php 二维数组快速排序算法的实现代码
2017/10/17 PHP
php/JS实现的生成随机密码(验证码)功能示例
2019/06/06 PHP
PHP时间相关常用函数用法示例
2020/06/03 PHP
将函数的实际参数转换成数组的方法
2010/01/25 Javascript
jQuery中的pushStack实现原理和应用实例
2015/02/03 Javascript
javascript单例模式的简单实现方法
2015/07/25 Javascript
BootStrap 实现各种样式的进度条效果
2016/12/07 Javascript
移动端日期插件Mobiscroll.js使用详解
2016/12/19 Javascript
JavaScript实现星级评分
2017/01/12 Javascript
js+html5实现复制文字按钮
2017/07/15 Javascript
JS实现百度搜索接口及链接功能实例代码
2018/02/02 Javascript
vue实现学生录入系统之添加删除功能
2018/07/11 Javascript
Vue父子之间值传递的实例教程
2020/07/02 Javascript
[51:22]Fnatic vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[02:04]完美世界城市挑战赛秋季赛报名开始 谁是solo路人王?
2019/10/10 DOTA
Python实现监控程序执行时间并将其写入日志的方法
2015/06/30 Python
Python实现按中文排序的方法示例
2018/04/25 Python
浅谈python中str字符串和unicode对象字符串的拼接问题
2018/12/04 Python
Scrapy框架爬取Boss直聘网Python职位信息的源码
2019/02/22 Python
Python实现微信消息防撤回功能的实例代码
2019/04/29 Python
使用Python进行体育竞技分析(预测球队成绩)
2019/05/16 Python
关于不懂Chromedriver如何配置环境变量问题解决方法
2019/06/12 Python
安装docker-compose的两种最简方法
2019/07/30 Python
numpy中的meshgrid函数的使用
2019/07/31 Python
django实现用户注册实例讲解
2019/10/30 Python
解决PyCharm不在run输出运行结果而不是再Console里输出的问题
2020/09/21 Python
使用Python提取文本中含有特定字符串的方法示例
2020/12/09 Python
质检的岗位职责
2013/11/17 职场文书
幼儿园运动会加油词
2014/02/14 职场文书
护理专业自荐书
2014/06/04 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
中国文明网2015年“向国旗敬礼”活动网上签名寄语
2015/09/24 职场文书
中学生打架《检讨书》范文
2019/08/12 职场文书
PHP面试题 wakeup魔法 Ezpop pop序列化与反序列化
2022/04/11 PHP