Dynamic Route에서 잘못된 파라미터 받았을 때 에러 처리 방법

asyncData의 context 파라미터의 params, error를 이용한다.

params는 URL의 파라미터를 나타내고, error는 해당 에러를 나타내주는 함수이다. error(404)로 호출할 시 layouts/error 페이지로 리다이렉션된다.

에러 페이지가 아니라 그냥 다른 페이지로 리다이렉션하고 싶다면 redirect 파라미터를 이용하자. redirect(url)로 호출하면 해당 URL로 리다이렉트된다!

// pages/contentEditPage/_content_id.vue

...
asyncData({ params, error, redirect }) {
    if (isNaN(params.content_id)) {
      error(404)
			// redirect('/')
    }
  },