Web卡顿上报优化

14 阅读1分钟

我们公司的项目会上报longTask超过300的埋点记录用来记录页面卡顿的情况

但是 上报的时候 url 经常是  #/pc/Fkladjsfkla/Dljfadsfjla/detail/1000000000000001

这里的活动id会变,但是固定是 16位数字

上报时默认是 window.location.hash会带着 活动id,这样就不能看到活动详情页 到底有多少个数量(上报系统拉胯)

这里我通过正则替换的方式,把活动Id替换成 固定的字符串

const urlWithActId = /[0-9]{16}$/;

let reportUrl = window.location.hash;

if (urlWithActId.test(reportUrl)) {  

  // 如果url中包含activityId, 替换成固定字符串,方便后续聚合查看数据  

  reportUrl = reportUrl.replace(urlWithActId, ':id');

}

这样处理后的 reportUrl 就是 不带具体活动id的url了

大功告成