我有一个消息列表。父组件负责显示消息。我想在安装所有消息组件后滚动到第一条未读消息。消息由 v-for
呈现。
<div v-for="msg in messages" :key="msg.id">
<message :text="msg.text"></message>
</div>
messages
是父组件的 prop,是一个数组。我的应用程序有多个房间。用户可以在房间之间移动。更改房间并加载新消息后,家长应滚动到第一条未读消息。
我尝试watch
改变房间并使用this.$nextTick
但是当$nextTick
的回调执行消息没有改变。
我也试过这个,但它只用于一条消息,与房间变化无关:(
<div v-for="msg in messages" :key="msg.id">
<message :text="msg.text" @hook:mounted="mounted"></message>
</div>