Как я могу получить предыдущие и текущие данные в обновленном хуке (похоже на React)? Я хочу прокрутить список элементов до самого низа, и для этого мне нужно:
- уже обработанный обновленный DOM (поэтому я хочу использовать обновленный хук для вычисления прокрутки)
- информация, прокручивать или нет (прокручивать только когда номер текущего
элементы больше предыдущего).
Я понял что-то вроде этого:
name: "list",
props: ["elements"],
data() {
return {
scrollBottom: false
};
},
updated() {
if (this.scrollBottom) {
window.scroll(0, this.$root.$el.scrollHeight); /* full window / app height list*/
}
},
watch: {
elements(current, prev) {
this.scrollBottom = current.length > prev.length;
}
}
Я не уверен, является ли это «правильным» подходом, но ловушки Vue не получают никакой информации о предыдущих данных. Могу ли я сделать это лучше? Спасибо за любую помощь.
EDIT
Я нашел эту полезную тему: ссылка . По-видимому, лучший способ справиться с этим - использовать метод. $ NextTick.