Ok, para explicar esto simplemente:
Tengo 3x páginas.
La página 1 tiene un-
<router-link to="/menu">botón que cuando se hace clic en las rutas a "/ menú".
Por ahora, la Página 2 (Menú) tiene un
<router-link to="/">y cuando se hace clic en este botón, vuelve a la ubicación anterior "/" Página 1 (Inicio).
Pero no quiero crear un componente para el enrutador para que cada página 'regrese' a la página anterior (como si tuviera 100 páginas, esto podría ser mucho trabajo enrutando hacia atrás). ¿Hay alguna manera de hacer esto con vue-router? similar a window.history.back()
Tengo curiosidad por ver si hay una manera de hacer esto, ya que no puedo encontrarla en los documentos.
¡Gracias por adelantado! John
Puede utilizar la navegación programática . Para volver atrás, usas esto:
router.go(n) Donde n puede ser positivo o negativo (retroceder). Esto es lo mismo que history.back() . Así que puedes tener tu elemento así:
<a @click="$router.go(-1)">back</a>Use $router.back() directamente para volver/enrutar hacia atrás mediante programación en vue-router. O si en la plantilla del componente usa router.back() .
Esto funciona como un reloj para mí:
methods: { hasHistory () { return window.history.length > 2 } }Luego, en la plantilla:
<button type="button" @click="hasHistory() ? $router.go(-1) : $router.push('/')" class="my-5 btn btn-outline-success">« Back </button>