8***@qq.com
8***@qq.com
  • 发布:2023-12-13 13:33
  • 更新:2023-12-13 13:35
  • 阅读:364

uni-app开发微信小程序时,如何劫持代理Page对象

分类:uni-app

在原生小程序中,我可以通过下面的代码代理Page对象,然后对生命周期进行拦截和修改,实现统一埋点等需求。

// 保存原始Page对象  
const originalPage = Page  

// 重写Page对象  
Page = function (pageObject) {  
  // 在这里可以对pageObject进行修改,例如劫持onLoad方法  
  const originalOnLoad = pageObject.onLoad  
  pageObject.onLoad = function (options) {  
    console.log('Page onLoad')  
    if (originalOnLoad) {  
      originalOnLoad.call(this, options)  
    }  
  }  

  // 调用原始Page对象  
  originalPage(pageObject)  
}

但uni-app中,我是通过下面的代码初始化app的,并没有Page对象,请问此时我该如何劫持代理Page对象呢?

import { createSSRApp } from 'vue';  
import App from './App.vue';  

export function createApp() {  
  const app = createSSRApp(App);  
  return { app };  
}
2023-12-13 13:33 负责人:无 分享
已邀请:
hhyang

hhyang - 如有问题,请添加QQ1606726660 备注付费咨询

用uni-simple-router解决

  • 8***@qq.com (作者)

    谢谢,我看一下~

    2023-12-13 14:32

  • 7***@qq.com

    回复 8***@qq.com: 请问解决了吗

    2024-11-15 18:26

要回复问题请先登录注册