使用微信开发工具的 Audit 功能排查小程序闪退原因

发布时间: 2018-09-27 23:17:29 作者: 大象笔记

昨天同事写了个功能,不但页面渲染慢,而且会导致微信小程序闪退(iPhone)。

闪退的原因很大概率是占用的内存或者 CPU 过高被微信强行 kill 掉。

排查过程:

首先确认渲染慢不是因为接口慢造成的。从 Network 可见, 请求 API 只用了两百毫秒,说明接口没有问题。

既然接口没有问题,那就是后续的数据处理逻辑出了问题。这是一个相对复杂的界面,我又懒得去一点一点看别人写的代码。索性找找微信开发工具上是否有自带的性能检测工具。

果然跟 Chrome 一样,都有一个 Audit 标签。

运行了一下

果然实用,问题立马暴露了出来。。。

居然在 for 循环里调用 setData,一分钟调用了近 300 次。。。这不慢才怪。。。

后续跟进

后来发现,这个页面在商品数量多时,异常卡顿。

原来大哥为每个商品都渲染了一堆重复的隐藏弹窗。。。

我是一名山东烟台的开发者,联系作者