这个 BUG 需要特定的动态卡片 + 特定的设备才能复现
这个 BUG 是如何产生的?
wxml2canvas 在绘制的时候,会根据一个叫做 sorted 的对象对它的 keys 进行遍历,该对象的 key 为节点的 top 值,value 为节点元素;问题就是出在这里,该库作者误以为 Object.keys() 总是会按照实际创建属性的顺序返回,然而当 key 为正整数的时候,返回顺序就不符合原本的预期了,会出现了绘制顺序错乱,从而导致这个 BUG 的产生。
const sorted = {
}
sorted[300] = {
}
sorted[100] = {
}
sorted[200] = {
}
sorted[50.5] = {