uniapp 小程序接入友盟 ,自定义事件携带参数(1),web网页开发


在根目录新建 track.js 和uma.js 文件

track.js 文件

/**

  • 全局事件统计,

  • 通过重写Component,实现监听onShow勾子函数,通过统一重写onShow函数

  • 用来统计哪个租户打开过哪个些页面

*/

import uma from ‘umtrack-wx’;

import Vue from ‘vue’

var track = (function(){

// var uma = 1;

var tenantid = null;

/**

  • onShow重写方法,类似于代理,先执行此方法,再执行真实的方法

  • @param {Object} e

*/

function show(e){

try{

//这里配置自定义事件

var pages = getCurrentPages()

uma.trackEvent(‘eventID’,{tenantid:track.tenantid,page:pages[pages.length-1].route})

//eventID是在友盟后台你自己创建的

}catch(e){

console.error(e)

}

}

/**

  • 设置重写方法(部署代理方法)

  • @param {Object} e 重写方法的对象

  • @param {Object} t 重写方法的名称

  • @param {Object} n 重写方法需要执行的方法

*/

function at(e, t, n) {

var i = e[t];

e[t] = function(e1) {

n.call(this, e);

i && i.call(this, e)

}

}

/**

  • Vue use执行的install 方法,此方法中重写Component

  • @param {Object} Vue

*/

function install(Vue){

try {

var gt = Component;

var _this = this

Component = function(t) {

try {

t.methods = t.methods || {};

var e = t.methods;

at(e, “onShow”, show);

gt(t)

} catch (e) {

gt(t)

}

}

console.log(“===Component 重写成功=”)

} catch (e) {

console.warn(“=Component重写异常=”)

}

Vue.prototype.$track = this;

track.uma = Vue.prototype.$uma

}

return {

install:install,

uma:uma,

tenantid:tenantid

}

})()

export default track;

uma.js 文件

// #ifdef MP-WEIXIN

import uma from ‘umtrack-wx’;

import Vue from ‘vue’

uma.init({

appKey: ‘由友盟分配的APP_KEY’,

useOpenid: true ,// 是否需要通过友盟后台获取openid或匿名openid,如若需要,请到友盟后台设置appId及secret,若设置了false,tt比较特殊,需要手动调用setAnonymousid设置这个参数

autoGetOpenid: false,//是否打开调试模式

debug: true // 自动上传用户信息,设为false取消上传,默认为false

});

// #endif

// #ifdef H5

const uma = {

init:()=>{},

_inited:false,

trackEvent:()=>{},

setOpenid:()=>{},

setUserid:()=>{},

setUnionid:()=>{},

pause:()=>{},

resume:()=>{}

}

// #endif

// 适配vue插件如此可通过Vue.use(uma)来安装

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

结尾

学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。

资料领取方式:戳这里免费获取

t这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。

资料领取方式:戳这里免费获取

html5

UniApp接入友盟推送(UMeng Push)的步骤如下: 1. **初始化配置**: 首先,在项目中引入友盟的SDK。在`main.js`或全局配置文件中,添加友盟推送的配置,包括APPID和服务器URL。 ```javascript import { uniPush } from '@dcloudio/uni-push' uniPush.init({ appKey: 'YOUR_APP_KEY', // 替换为你的友盟AppKey channel: '', // 渠道标识,可选 onNotification: function (notification) {}, // 接收通知回调 openMiniProgram: false, // 是否打开小程序通知,默认false }) ``` 2. **注册设备**: 在用户登录后,需要获取并注册用户的设备标识以便接收推送消息。 ```javascript uniPush.registerDevice(function(res) { console.log('设备注册成功,token:', res.data.token) }, function(err) { console.error('设备注册失败:', err) }) ``` 3. **设置推送通知**: 友盟提供了丰富的通知设置,包括通知类型、标题、内容等,可以通过`setNotificationConfig`方法进行配置。 4. **发送推送**: 当需要向特定用户或者所有用户发送推送时,调用`sendNotification`方法,传入接收者列表和消息内容。 5. **监听事件**: 可以监听友盟推送的事件,如打开通知、点击通知等,通过`addEventListener`方法。 ```javascript uniPush.addEventListener('registrationSuccess', function (event) { console.log('注册成功', event.detail) }) ``` 6. **测试推送**: 在友盟后台创建测试推送,确保在模拟器或真机上正确显示和接收。 **相关问题--:** 1. 如何在UniApp中关闭友盟推送? 2. 如何查看友盟推送的统计分析? 3. 推送通知失败如何处理错误信息?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值