abortNavigation
abortNavigation es una función auxiliar que previene la navegación y lanza un error si se establece como parámetro.
abortNavigation solo se puede usar dentro de un manejador de middleware de ruta.
Tipo
abortNavigation(err?: Error | string): false
Parámetros
err
-
Tipo:
Error|stringError opcional que será lanzado por
abortNavigation.
Ejemplos
El siguiente ejemplo muestra cómo puedes usar abortNavigation en un middleware de ruta para prevenir el acceso no autorizado a una ruta:
middleware/auth.ts
export default defineNuxtRouteMiddleware((to, from) => {
const user = useState('user')
if (!user.value.isAuthorized) {
return abortNavigation()
}
if (to.path !== '/edit-post') {
return navigateTo('/edit-post')
}
})
err como una Cadena
Puedes pasar el error como una cadena:
middleware/auth.ts
export default defineNuxtRouteMiddleware((to, from) => {
const user = useState('user')
if (!user.value.isAuthorized) {
return abortNavigation('Permisos insuficientes.')
}
})
err como un Objeto de Error
Puedes pasar el error como un objeto Error, por ejemplo, capturado por el bloque catch:
middleware/auth.ts
export default defineNuxtRouteMiddleware((to, from) => {
try {
/* código que podría lanzar un error */
} catch (err) {
return abortNavigation(err)
}
})
※Esta página es una traducción no oficial de la documentación oficial de Nuxt.js.
La página correspondiente en la documentación oficial está aquí:
https://nuxt.com/docs/3.x/api/utils/abort-navigation