位置: IT常识 - 正文

Uniapp-微信小程序实现全局事件监听并进行数据埋点(uniapp微信小程序头像获取与服务器对接)

编辑:rootadmin
Uniapp-微信小程序实现全局事件监听并进行数据埋点 Uniapp-微信小程序实现全局事件监听并进行数据埋点零、前言

推荐整理分享Uniapp-微信小程序实现全局事件监听并进行数据埋点(uniapp微信小程序头像获取与服务器对接),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp微信小程序开发知识点,uniapp微信小程序一键登录,uniapp微信小程序获取手机号,uniapp微信小程序表单验证,uniapp微信小程序支付流程,uniapp微信小程序获取手机号,uniapp微信小程序兼容,uniapp微信小程序获取手机号,内容如对您有帮助,希望把文章链接给更多的朋友!

最近接到需求,领导希望使用微信开放平台上免费的We分析进行数据埋点,但又不希望在现有uniapp开发的微信小程序代码上做侵入式修改,笔者奉命进行了技术调研,考虑通过劫持事件的方式来实现捕获特定事件并上传分析平台的功能。

需要特别注意的是,微信小程序是不能得到document对象的,$el上挂载的也是undefined,自然也就不能通过全局addEventListener的方式来监听特定事件。在调研中想到可以通过劫持小程序的自定义组件构造器Component()来实现事件的监听。

为了便于理解,部分数据结构通过TypeScript接口形式进行描述。

一、软件环境HbuilderX 3.4.7.20220422微信开发者工具 Stable 1.05.2203070小程序基础库版本 2.24.4 [749]二、相关分析及实现uniapp编译微信小程序时对于事件的处理分析Uniapp-微信小程序实现全局事件监听并进行数据埋点(uniapp微信小程序头像获取与服务器对接)

部分知识via掘金:https://juejin.cn/post/6968438754180595742#heading-20

uniapp使用了uni-app runtime这个运行时将小程序发行代码进行打包,实现了Vue与小程序之间的数据及事件同步。

源Vue模板及编译产物wxml对照

uniapp的模板编译器代码在/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/uni-template-complier下。

首先以一个简单的Vue模板为例,观察uniapp是如何将Vue template编译为wxml的:

<template> <div @click="add();subtract(2)" @touchstart="mixin($event)">{{ num }}</div></template>

编译结果为:

<view data-event-opts="{{ [ ['tap', [['add'],['subtract',[2]]] ], ['touchstart', [['mixin',['$event']]] ] ] }}" bindtap="__e" bindtouchstart="__e" class="_div"> {{num}}</view>

可以看到,uniapp将tap和touchstart事件绑定到__e函数上,然后将事件对应的动作放到了名为eventOpts的dataset中。

data-event-opts

data-event-opts非常重要。data-event-opts是一个二维数组,每个子数组代表一个事件类型。事件类型有两个值,第一个表示事件类型名称,第二个表示触发事件函数的个数。事件函数又是一个数组,第一个值表述事件函数名称,第二个是参数表。下面用TypeScript的类型

本文链接地址:https://www.jiuchutong.com/zhishi/283644.html 转载请保留说明!

上一篇:Win11 Dev 预览版22509.1011更新补丁KB5008918发布(附更细内容汇总)(win11预览版dev改beta)

下一篇:绿萝的养殖方法和注意事项——办公室养殖版(图文)(大型绿萝的养殖方法)

  • 苹果还原网络设置在哪里(苹果还原网络设置密码是什么)

    苹果还原网络设置在哪里(苹果还原网络设置密码是什么)

  • 苹果手机睡眠模式怎么设定(苹果手机睡眠模式电话能打进来吗)

    苹果手机睡眠模式怎么设定(苹果手机睡眠模式电话能打进来吗)

  • 微信运动关机了还能计步吗(微信运动关机了还会不会记录)

    微信运动关机了还能计步吗(微信运动关机了还会不会记录)

  • win10卸载软件在哪里(win10卸载程序在哪里)

    win10卸载软件在哪里(win10卸载程序在哪里)

  • 苹果11怎么设置返回键(苹果11怎么设置铃声)

    苹果11怎么设置返回键(苹果11怎么设置铃声)

  • 苹果6怎么恢复旧系统(苹果6怎么恢复出厂设置在哪里)

    苹果6怎么恢复旧系统(苹果6怎么恢复出厂设置在哪里)

  • 用户体验计划开还是关(用户体验计划开了会至手机变卡吗)

    用户体验计划开还是关(用户体验计划开了会至手机变卡吗)

  • 耳机皮套开裂怎么处理(耳机皮罩裂开怎么办)

    耳机皮套开裂怎么处理(耳机皮罩裂开怎么办)

  • 键盘上大小写字母切换是哪个键(键盘上大小写字母怎么打)

    键盘上大小写字母切换是哪个键(键盘上大小写字母怎么打)

  •  wps表格怎样查找内容(wps表格怎样查重复)

    wps表格怎样查找内容(wps表格怎样查重复)

  • ap热点什么意思(什么是ap热点wifi)

    ap热点什么意思(什么是ap热点wifi)

  • 通过qq号可以查到手机号码吗(通过qq号可以查到什么社交软件)

    通过qq号可以查到手机号码吗(通过qq号可以查到什么社交软件)

  • 为什么订单没有投诉卖家(为什么订单没有退款按钮)

    为什么订单没有投诉卖家(为什么订单没有退款按钮)

  • 小米电视可以下载钉钉吗(小米电视可以下载爱奇艺吗)

    小米电视可以下载钉钉吗(小米电视可以下载爱奇艺吗)

  • 蜂窝漫游什么意思(蜂窝数据选项 漫游数据是什么意思)

    蜂窝漫游什么意思(蜂窝数据选项 漫游数据是什么意思)

  • 微信手机号码被别人绑定了怎么办(微信手机号码被别人绑定了登不上)

    微信手机号码被别人绑定了怎么办(微信手机号码被别人绑定了登不上)

  • 小米8陀螺仪在设置哪里(小米陀螺仪在哪里设置)

    小米8陀螺仪在设置哪里(小米陀螺仪在哪里设置)

  • 高德地图标记多个地点(高德地图标记多少钱)

    高德地图标记多个地点(高德地图标记多少钱)

  • 拼多多下单 备注在哪(拼多多下单 备注怎么看)

    拼多多下单 备注在哪(拼多多下单 备注怎么看)

  • 数字认证的功能有哪些(数字认证中的职能)

    数字认证的功能有哪些(数字认证中的职能)

  • 恢复视频能不能出现所有视频(可以恢复视频)

    恢复视频能不能出现所有视频(可以恢复视频)

  • 闲鱼被骗投诉有用吗(闲鱼如果被骗了 举报官方会受理吗)

    闲鱼被骗投诉有用吗(闲鱼如果被骗了 举报官方会受理吗)

  • vivo如何查询有碎屏险(怎样查看vivo)

    vivo如何查询有碎屏险(怎样查看vivo)

  • VMware17虚拟机:下载和安装教程(vmware17虚拟机安装教程)

    VMware17虚拟机:下载和安装教程(vmware17虚拟机安装教程)

  • 自行研发的无形资产不确认递延所得税
  • 滴滴电子普通发票怎么抵扣
  • 建筑行业异地工资怎么算
  • 非税项目明细代码
  • 个人股权转让需要注意什么
  • 营业执照注销还需要交钱吗
  • 关税滞纳金会计怎么做账
  • 低价销售差额部分计入
  • 其他流动资产的构成
  • 补缴以前年度税费
  • 店铺不盈利还开吗
  • 免征政府性基金预缴税款
  • 企业发现多缴税款超过3年
  • 会计怎么避免坐牢
  • 所得税季度申报营业收入填什么
  • 公司租赁办公场地用缴纳房产税吗
  • 期望和方差的计算例题
  • 购买法下购买成本包括
  • 现金采购怎么算
  • 盈余积累转增股本的个税问题
  • 临时工工资单怎么做
  • 免税企业进项怎么处理
  • 坏账减值准备账务处理
  • 房地产企业的沙盘模型制作费会计处理
  • 在win10系统中,如何限制孩子玩原神游戏
  • 为什么windows10关机后自动开机
  • windows 10音响没有声音
  • 市面最高版本
  • 最薄的平板电脑是哪种
  • 事业单位会计准则是否废止
  • 商业汇票贴现时贴现额的大小受贴现期长短的影响
  • 利用python自动填问卷
  • 微信小程序封掉了怎么办
  • php中的九大缓存技术
  • 废钢收购无进项怎么处理
  • yolov5源码讲解
  • 部门差旅费预算表
  • 浪漫编程代码
  • sftp命令大全
  • php对接第三方支付
  • php批量替换字符串
  • php curl设置cookie
  • 法人给对公账户转账
  • 建筑业为什么要报统计局
  • 辞退员工福利
  • sql优化常用的15种方法
  • 小规模纳税人进项发票怎么做账
  • 股东清算收入是负债吗
  • 盈余公积转增资本会计科目
  • 无形资产摊销计算方法
  • 小规模纳税人的条件
  • 一个人可以做多个担保人吗
  • 经营项目里没有纹身可以纹身吗
  • 日用品办公用品的经营范围
  • 公司客户招待费用标准
  • 物流运输业务
  • 往来支付是现金结算吗
  • 企业建账前应考虑什么
  • sqlserver获取年月日
  • xp系统怎么提升性能
  • windows7自带杀毒软件在哪里
  • windows10周年纪念版
  • xp系统怎么隐藏文件
  • win7系统桌面图标有遮挡
  • win7系统鼠标右键没有压缩文件功能
  • cortana小娜怎么用
  • 绝对给力的超经典
  • JavaScript打开WPS
  • linux做ftp
  • js如何使用
  • arraylist100扩充几次
  • 时间戳的差值
  • androidstudio和idea
  • python twinter
  • 前端框架到底是什么
  • 空调设备税率多少钱
  • 党建工作领导小组会议
  • 增值税是否在利润表反映
  • 企业所得税忘记交了怎么办
  • 解放服务站总部电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设