rax 小程序编译时组件添加自动化埋点时失败解决方案

rax 小程序编译时组件添加自动化埋点时失败解决方案

    • 参数透传
      • 解决方案
      • 最后的结局就是完美的解决问题!

参数透传

rax编译时组件官方文档
rax官方埋点方案
读完文档我们发现,rax的编译时组件机制是将我们封装好的组件放到一个独立的文件中(miniapp-compiled)形成一层隔离,该文件用于收集需要编译的编译时组件,但是由于编译时组件的特殊性,编译时组件和运行时项目中存在隔离,其引入的 js 模块不是同一引用,所以导致直接进行rax自动化埋点会失败,取不到埋点信息。

解决方案

有问题就会有方法,在我试了无数个方法(整体取出,部分文件拿出miniapp,结构修改等)都不能解决这个问题的时候,我换了一种思路,既然自动埋点不能解决问题,那手动埋点总可以了吧。然后我尝试去试了一下
rax 小程序编译时组件添加自动化埋点时失败解决方案_第1张图片

结果在引入文件的时候就惨遭滑铁卢

‘miniapp文件夹底下是引入不进来这个api的…真是疯求了’(不过mini外面是可以正常使用的)

最后,我思考了一下,可不可以用透传的方法呢,就是将miniapp文件夹里面的编译时组件一层一层的传递点击(曝光)事件,在最外层的非miniapp的文件中引入手动埋点,然后抛出。

1/最外层组件

rax 小程序编译时组件添加自动化埋点时失败解决方案_第2张图片
2/中间层组件
rax 小程序编译时组件添加自动化埋点时失败解决方案_第3张图片
rax 小程序编译时组件添加自动化埋点时失败解决方案_第4张图片
引入然后往更深层的组件透传函数

3/最深层组件
rax 小程序编译时组件添加自动化埋点时失败解决方案_第5张图片

最后的结局就是完美的解决问题!

你可能感兴趣的:(JavaScript,rax,小程序,小程序,自动化,运维)