日常开发可能会碰到路由的访问虽然符合定义的路由情况,但是可能中间的内容并不符合我们的预期,比如/list/:id/:detail,有的时候可能用户可能访问的是/list/%2D%3F/asfeerer,此时查看network可能给到的状态是500
我们可以才去两种方法处理:
1、定义NuxtRouteMiddleware
export default defineNuxtRouteMiddleware((to, from) => {
if (!to.matched.length) { throw createError({ statusCode: 404, fatal: false });
}
})
2、使用definePageMeta
definePageMeta({
validate: (route) => {return /\d+/.test(route.params.id)}
})
以上两种方法都能使状态码变为404,然后展示错误页面