Coder Social home page Coder Social logo

vue-ba's Introduction

vue-ba

vuejs 百度统计埋点插件

项目参考:https://github.com/raychenfj/vue-uweb

项目地址

https://github.com/minlingchao1/vue-ba

1. 安装

npm install vue-ba --save

直接在页面中引用

<script src="./node_modules/vue-uweb/dist/index.js"><script>

或者通过es6模块加载

import ba from 'vue-ba'

使用vue-ba插件

Vue.use(ba, 'YOUR_SITEID_HERE')

通过传递 options 参数进行更多设置

Vue.use(uweb,options)

options

参数必须默认说明备注
siteId绑定要接受API请求的统计代码
debug false调试模式下将在控制台中输出调用window._hmt时传递的参数请不要在生产环境中使用,避免造成安全隐患
src https://hm.baidu.com/hm.js?SITEID指定统计脚本标签的 src 属性

2. ba API

2.1 trackEvent

用于发送页面上按钮等交互元素被触发时的事件统计请求。

用法

this.$ba.trackEvent(category,action,opt_label,opt_value)

参数

参数必须类型说明
category string 表示事件发生在谁身上
action string 表示访客跟元素交互的行为动作
opt_label string 用于更详细的描述事件
opt_value int 用于填写打分型事件的分值,加载时间型事件的时长,如果填写为其他形式,系统将按0处理。若填写为浮点小数,系统会自动取整,去掉小数点。

2.2 trackPageview

用于发送某个URL的PV统计请求,适用于统计AJAX、异步加载页面,友情链接,下载链接的流量

用法

this.$ba.trackPageview(pageURL)

参数

参数必须类型说明
pageURL string 自定义虚拟PV页面的URL地址,填写以斜杠‘/’开头的相对路径,系统会自动补全域名

3. ba 指令

vue-ba 提供 track-event,track-pageview 两个指令,开发者可以直接在 html 模版中使用来统计网站数据

3.1 track-event

使用指令 v-track-event 监听事件, 通过 modifiers 指定事件类型,将自动为绑定元素添加事件监听,当事件触发调用统计代码。 如不指定事件,默认监听 click 事件。

可通过逗号分隔的字符串或对象字面量传递参数,以字符串传递时请注意参数顺序,可参考trackEvent API。

统计自定义事件使用 v-track-event.someEvent:custom

用法

<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事件

<input v-track-event.someEvent:custom="'category, action'"> // 统计someEvent事件,someEvent是自定义事件

<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> // 以对象字面量指定受访页面和来源

vue-ba's People

Contributors

dependabot[bot] avatar minlingchao avatar minlingchao1 avatar starryrbs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

vue-ba's Issues

您好,请修改README文件

  1. 我注意到源代码options里有配置如下:
    autoPageview

  2. 但是README.md里面options说明没有这段话:
    README.md里的options

  3. 百度统计官方文档

_hmt.push(['_setAutoPageview', false]);
_hmt.push(['_trackPageview', '/new/path/new/name']);

在例子中,我们首先使用了_setAutoPageview接口关闭了自动PV跟踪,然后使用了_trackPageview接口来发送新的PV统计请求。

这样在页面被访问时,记入PV的就不是原URL了,而是您指定的新的URL。

请注意上述代码最好能够加在页头标签前,至少要保证位于百度统计分析代码的前面。

readme文件示例用了uweb

通过传递
options 参数进行更多设置
Vue.use(uweb,options)

这里用了uweb应该是友盟那个库的用法吧

引用该库后是否就具备了基础的统计功能?

如果在main.js 中配置了引用,是否就已经可以统计uv和pv 了呢,因为这个库看起来是做埋点用的。
import ba from 'vue-ba'
import './assets/css/normalize.css'
Vue.config.productionTip = false;

Vue.use(ba, "175015a6227dca437e13abb9a6e845ac");
Vue.use(ba, { siteId: "175015a6227dca437e13abb9a6e845ac" });

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.