在vue3中结合vant使用list组件时发现第一次的load事件没有触发,导致第一次本应填充满组件父级的高度的数据没有渲染到组件中。
在百度的过程中,提及的都是父组件高度设为小于100%啥的发现没用。之后考虑到可能是组件初始为display:none;因此在display改为block的时候他就没有渲染。
我当时的场景时当变量modelValue值为false的时候为display:none;
modelValue值为true的时候display:block;因此我在list的父组件上加了个v-if="modelValue"这样就会在display:block;时才会渲染组件,而结果确实解决了第一次不加载数据的问题,相比其原因就是display:none所致
文章讲述了在Vue3中使用VantList组件时遇到的初次load事件未触发问题,原因是组件初始状态为display:none。通过在父组件上添加v-if根据modelValue切换显示状态,解决了数据初次渲染问题,显示:none是关键因素。

2万+

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



