taro 集成腾讯移动统计 MTA,自动上报功能无法使用



  • 我想集成 MTA 的小程序 SDK 到 taro 。原来的 SDK 只针对了原生的小程序,没有给 taro 做适配。

    https://mta.qq.com/mta/ctr_index/download

    其中有个功能是每个页面自动上报,在 app.js 的 onLunch 调用,Page 里面就无需插入额外代码。

    现在我在 app.tsx 里面加了这个:

      componentWillMount() {
        mta.App.init({
          autoReport: true,
        })
      }
    

    然后,会执行 SDK 里面一段代码:

    function initOnload() {
        var a = Page;
        Page = function(b) {
            var c = b.onLoad;
            b.onLoad = function(a) {
                c && c.call(this, a);
                MTA.Data.lastPageQuery = MTA.Data.pageQuery;
                MTA.Data.pageQuery = a;
                MTA.Data.lastPageUrl = MTA.Data.pageUrl;
                MTA.Data.pageUrl = getPagePath();
                MTA.Data.show = !1;
                MTA.Page.init()
            };
            a(b)
        }
    }
    

    但是我打断点发现,页面加载的时候,这里只有 Page 被赋值了,后面的装饰代码没有被执行到。(如果用原生小程序是没有问题的)

    对整一个不是很熟,请问到底是哪里应该修改一下可以做到兼容呢?



  • @jd_650b67f4fe3cbtaro 集成腾讯移动统计 MTA,自动上报功能无法使用 中说:

    https://mta.qq.com/mta/ctr_index/download

    这个 SDK 通过劫持 onload 去做了一些处理。 这里暂时好像无法兼容


登录后回复