Я использую Quasar, и это совершенно новый проект, поэтому я использую все последние версии Vue, Vue Router и Pinia.
У меня есть страница с большим списком элементов, поэтому я подумал, что было бы неплохо сохранить положение прокрутки при возврате к списку. Все элементы загружаются из состояния с использованием вычисляемого свойства, только при первой загрузке с сервера. Я добавил код, который должен возвращать сохраненную позицию последней страницы, но каждый раз он возвращается как нуль. только при первом открытии приложения оно возвращается как { x: 0, y: 0 };
У меня есть другое приложение, в котором этот код работает нормально, но это гораздо более старый проект. Я не уверен, что случилось на самом деле.
Вот мой код:
export default route(function (/* { store, ssrContext } */) {
const createHistory = process.env.SERVER
? createMemoryHistory
: process.env.VUE_ROUTER_MODE === "history"
? createWebHistory
: createWebHashHistory;
const Router = createRouter({
scrollBehavior: (to, from, savedPosition) => {
console.info(savedPosition);
if (savedPosition) {
return savedPosition;
} else {
return { x: 0, y: 0 };
}
},
routes,
history: createHistory(process.env.VUE_ROUTER_BASE),
});



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Как указано в документации VueRouter
Спасибо, ваш ответ как бы помог мне. Я уже использовал навигацию popstate, моя проблема заключалась в том, что я использовал вкладки и наблюдал за изменением их значения, а затем использовал router.push() для перехода пользователя на эту страницу. По какой-то причине это вызывало проблемы, но теперь это исправлено после того, как вместо этого было изменено использование q-route-tab.