公司项目,用的antd+umi,所以UI库直接用的antd的。
其中,有一个页面的Tabs出现以上问题,排查过组件使用、修改过动画效果,都无用。
最后发现和tab本身没关系,不是各种引入冲突。
是因为每个tab页有好几个接口请求,每个都会触发render刷新,
而tab切换时,active值因为存在state里,因此数据变化也会触发render加载,
因此会出现多次render加载,也导致动画多次开始,因此出现闪动。
仔细观察接口返回情况,就能发现闪动次数是与接口请求数类似的。
但这个问题并没有被解决,试了很多方法,即便接口请求引发的加载能被解决,active值变化却无法避免。
但知道问题是为什么也是有意义的,记下来分享给与我有同样迷惑的小伙伴。