项目场景:
列表页窗口高度改变导致loop limit exceeded
目前列表页布局都采用了列表高度自适应,最大高度不超过页面剩余最大高度,如图


问题描述
列表页面在改变窗口高度时,会疯狂报错,如图



原因分析:
开始以为是计算maxHeight的逻辑有问题,审查了一遍代码后没有发现逻辑异常,并且其它项目均使用了该方案,没有出现类似问题。应该不是代码逻辑的问题,就还有一种可能,本项目的table页布局有问题,又去逐层分析dom的css样式,终于发现问题是因为table-box高度没有被限制,页面初始化后根据kfTable计算maxHeight,maxHeight更新又会影响table-box高度,它们俩互相反复触发
解决方案:

下面是flex:1布局加上overflow:hidden和没加的对比


博客讲述了在项目中遇到的列表页面窗口高度调整时疯狂报looplimitexceeded错误的问题。作者深入分析了原因,发现是由于table-box的高度未被限制,与maxHeight计算互相触发导致的无限循环。解决方案是通过添加overflow:hidden属性来限制table-box的高度,从而避免了错误的发生。
5977

被折叠的 条评论
为什么被折叠?



