mirror of
https://github.com/Spythere/stacjownik.git
synced 2026-05-03 13:28:11 +00:00
Fix routingu widoków i filtrowania scenerii
This commit is contained in:
+44
-25
@@ -1,46 +1,65 @@
|
||||
import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'
|
||||
import JournalDispatchersVue from '@/components/JournalView/JournalDispatchers.vue';
|
||||
import JournalTimetablesVue from '@/components/JournalView/JournalTimetables.vue';
|
||||
import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router';
|
||||
|
||||
const routes: Array<RouteRecordRaw> = [
|
||||
{
|
||||
path: '/',
|
||||
name: 'StationsView',
|
||||
component: () => import("@/views/StationsView.vue")
|
||||
component: () => import('@/views/StationsView.vue'),
|
||||
},
|
||||
{
|
||||
path: "/trains",
|
||||
name: "TrainsView",
|
||||
component: () => import("@/views/TrainsView.vue"),
|
||||
props: route => ({ train: route.query.train, driver: route.query.driver })
|
||||
path: '/trains',
|
||||
name: 'TrainsView',
|
||||
component: () => import('@/views/TrainsView.vue'),
|
||||
props: (route) => ({ train: route.query.train, driver: route.query.driver }),
|
||||
},
|
||||
{
|
||||
path: "/scenery",
|
||||
name: "SceneryView",
|
||||
component: () => import("@/views/SceneryView.vue"),
|
||||
props: true
|
||||
path: '/scenery',
|
||||
name: 'SceneryView',
|
||||
component: () => import('@/views/SceneryView.vue'),
|
||||
props: true,
|
||||
},
|
||||
{
|
||||
path: "/journal",
|
||||
name: "JournalView",
|
||||
component: () => import("@/views/JournalView.vue")
|
||||
path: '/journal',
|
||||
name: 'JournalView',
|
||||
component: () => import('@/views/JournalView.vue'),
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
redirect: '/journal/timetables',
|
||||
component: JournalTimetablesVue,
|
||||
},
|
||||
{
|
||||
path: 'dispatchers',
|
||||
component: JournalDispatchersVue,
|
||||
props: (route) => ({ sceneryName: route.query.sceneryName, dispatcherName: route.query.dispatcherName }),
|
||||
},
|
||||
{
|
||||
path: 'timetables',
|
||||
component: JournalTimetablesVue,
|
||||
props: (route) => ({
|
||||
trainNo: route.query.trainNo,
|
||||
driverName: route.query.driverName,
|
||||
timetableId: route.query.timetableId,
|
||||
}),
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
path: '/:catchAll(.*)',
|
||||
redirect: "/"
|
||||
}
|
||||
]
|
||||
redirect: '/',
|
||||
},
|
||||
];
|
||||
|
||||
const router = createRouter({
|
||||
scrollBehavior(to, from) {
|
||||
|
||||
if (to.name == "SceneryView" && from.name)
|
||||
return { el: `.app_main` };
|
||||
|
||||
if (from.name == "SceneryView" && to.name == "StationsView")
|
||||
return { el: `.last-selected`, top: 20 }
|
||||
scrollBehavior(to, from) {
|
||||
if (to.name == 'SceneryView' && from.name) return { el: `.app_main` };
|
||||
|
||||
if (from.name == 'SceneryView' && to.name == 'StationsView') return { el: `.last-selected`, top: 20 };
|
||||
},
|
||||
history: createWebHistory(),
|
||||
routes,
|
||||
})
|
||||
});
|
||||
|
||||
export default router
|
||||
export default router;
|
||||
|
||||
Reference in New Issue
Block a user