Creé rutas anidadas para el enrutador vue, y estoy usando esas rutas para obtener datos para crear el menú de navegación. Y para el 'enlace del enrutador: a =' actualmente estoy usando route.path. El problema con eso es que es solo una parte de la ruta y quiero poner una ruta absoluta que también incluya las rutas de los padres. Hay alguna manera de hacer esto. También traté de iterar sobre todas las rutas y establecer algunas propiedades que incluirán rutas principales, pero no pude escribir una buena función.
{ path:'/meteorologija', name:'meteorologija', component:()=>import('../pages/BlogPage'), children:[ { path:'/meteorolosko-bdenje', name:'meteorolosko bdenje', component:()=>import('../pages/BlogPage'), children:[ { path:'/aktuelni-podaci', name:'aktuelni podaci', component:()=>import('../pages/BlogPage'), children:[ { path:'/podaci', name:'Podaci', component:()=>import('../pages/BlogPage') }, { path:'/trenutne-temerature', name:'Trenutne temperature', component:()=>import('../pages/BlogPage') }, { path:'/ekstremne-temperature', name:'Ekstremne Temperature', component:()=>import('../pages/BlogPage') }, { path:'/pritisak', name:'Pritisak', component:()=>import('../pages/BlogPage') }, { path:'/vjetar', name:'Vjetar', component:()=>import('../pages/BlogPage') }, { path:'/kolicina-padavina', name:'Kolicina padavina', component:()=>import('../pages/BlogPage') }, { path:'/radarska-slika', name:'Radarska Slika', component:()=>import('../pages/BlogPage') }, ] },Esta es la función que estoy tratando de escribir que obtendrá la ruta del objeto profundamente anidado que incluye rutas de todos los objetos principales
t(routes, path={}){ routes.forEach((r,i)=>{ if(r.children){ // path+= r.path; this.t(r.children, path); } });Puede acceder a ellos dentro de su componente de esta manera: this.$route.path.matched , le dará una variedad de rutas coincidentes actuales, así que digamos que está en /meteorologija/meteorolosko-bdenje/aktuelni-podaci/podaci , luego devolverá algo como esto (también contendrá alguna otra información):
[ { path:'/meteorologija', name:'meteorologija' }, { path:'/meteorolosko-bdenje', name:'meteorolosko bdenje' }, { path:'/aktuelni-podaci', name:'aktuelni podaci' }, { path:'/podaci', name:'Podaci' }, ]Así que eché un segundo vistazo a su código y encontré esto, no debería tener una barra inclinada en las rutas de sus hijos, por lo que debería cambiarlo así:
{ path:'/meteorologija', name:'meteorologija', component:()=>import('../pages/BlogPage'), children:[ { path:'meteorolosko-bdenje', name:'meteorolosko bdenje', component:()=>import('../pages/BlogPage'), children:[ { path:'aktuelni-podaci', name:'aktuelni podaci', component:()=>import('../pages/BlogPage'), children:[ { path:'podaci', name:'Podaci', component:()=>import('../pages/BlogPage') }, { path:'trenutne-temerature', name:'Trenutne temperature', component:()=>import('../pages/BlogPage') }, { path:'ekstremne-temperature', name:'Ekstremne Temperature', component:()=>import('../pages/BlogPage') }, { path:'pritisak', name:'Pritisak', component:()=>import('../pages/BlogPage') }, { path:'vjetar', name:'Vjetar', component:()=>import('../pages/BlogPage') }, { path:'kolicina-padavina', name:'Kolicina padavina', component:()=>import('../pages/BlogPage') }, { path:'radarska-slika', name:'Radarska Slika', component:()=>import('../pages/BlogPage') }, ] },¿Intentaste con
this.$route.fullPath