- PerformanceEntry route类型duration的具体含义?
下面是Android真机调试获取到的PerformanceEntry数据 SDK版本: 3.7.10 [ { entryType: "navigation", name: "route", startTime: 1742293754785, duration: 100, navigationType: "switchTab", path: "pages/about/about", pageId: -1596533372, referrerPath: "pages/index/index", referrerPageId: -1460411808, navigationStart: 1742293754800, }, { entryType: "render", name: "firstRender", startTime: 1742293754800, duration: 58, path: "pages/about/about", pageId: -1596533372, viewLayerReadyTime: 1742293754796, initDataSendTime: 1742293754831, initDataRecvTime: 1742293754835, viewLayerRenderStartTime: 1742293754835, viewLayerRenderEndTime: 1742293754853, } ] fristRender的结束点:1742293754800 + 58 = 1742293754858 (startTime + duration) route entry的结束点:1742293754800 + 100 = 1742293754900 (navigationStart + duration) 可以看到 1742293754900 大于 1742293754858 ,即route类型数据结束点晚于首次渲染。那么这个时间点是什么时间点?微信小程序根据什么计算逻辑给出了这个时间点?首次渲染结束后到route entry结束之间发生了什么?
03-18 - PerformanceEntry downloadPackage 怎么判断有没有触发代码包下载?
{ "entryType": "loadPackage", "name": "downloadPackage", "startTime": 1691462962358, "duration": 82, "packageName": "__APP__", "packageSize": 0 } 如图是获取到的一个PerformanceEntry 对象,当代码包下载没有发生时,数据是什么样的? 是packageSize为0,还是完全不会收到downloadPackage这条entry?文档上没有具体说明
2023-08-08 - 微信小程序是否可以在web-view加载的页面中执行JS代码?
微信小程序是否可以在web-view加载的页面中执行JS代码?文档上没有相关描述,如果目前不支持,是否有计划支持?
2023-07-20 - 主包require异步加载分包为什么是同步执行?
// 情况1 Page({ async onLoad() { console.log(1) require.async('../xxx').then(async (pkg) => { console.log(2) }) console.log(3) } }) // 打印顺序 1 2 3 // 情况2 Page({ async onLoad() { console.log(1) require('../xxx', async (pkg) => { console.log(2); }, ({ errMsg, mod }) => { console.error(`path: ${mod}, ${errMsg}`) }) console.log(3) } }) // 打印顺序 1 2 3 如上图所示: 官方文档上写的分布异步化的两种加载策略,如果下载包是异步的,那么打印顺序是否应该是1 3 2 目前测试结果看,2种方式的回调都是在console.log(3) 之前执行,且1 和 3中间时间差有几百毫秒的差值,即阻塞了代码执行。请问这种属于正常情况吗?
2023-06-27