vue $nextTick无效果探索

近日在开发代码的过程中遇到了一个很有意思的bug,我就简单描述一下业务场景
有一个展开收起的功能,

红色部分未展开时

绿色部分的高度=总体高度 - 红色部分的高度


demo1.png
红色部分展开后
demo2.png

展开的时候我们肯定是要去改变红色部分的高度的,改变之后我们在父组件里面去获取,发现在nextTick里面获取的永远都是展开之前的高度,收起之后获取的却是展开之后的高度,老是慢了一拍,但是当我我们去断点的时候又变的正常了,着实是诡异
认真的排查了一番,发现在写展开收起的时候添加了一个translation过度属性.5s,然后我就把$nextTick换成setTimeOut然后延时500ms这个问题就解决了

之前一直都认为$nextTick是页面渲染完成之后才会触发,现在看来一些动画的过渡效果是个例外

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。