써치킴의 우당탕탕 개발 블로그

[Vue.js][Ch4][영화검색 사이트] 404 Page Not Found 본문

완벽하게 Vue.js

[Vue.js][Ch4][영화검색 사이트] 404 Page Not Found

써치킴 2022. 5. 1. 03:36

사용자가 접근하는 모든 페이지를 캐치해서 404 메시지가 보일 수 있도록 처리

1. NotFound.vue 생성

<template>
  <div class="not-found">
    <div class="status">
      404
    </div>
    <div class="message">
      Page Not Found!
    </div>
  </div>
</template>

<style lang="scss" scoped>
@import "~/scss/main";    /* 부트스트랩을 사용할 수 있게 import */

.not-found {
  line-height: 1.2;
  text-align: center;
  font-family: "Oswald", sans-serif;
  padding: 80px 20px;
  .status {
    font-size: 160px;
    color: $primary;
  }
  .message {
    font-size: 50px;
  }
}
</style>

2. route > index.js > routes 옵션에 연결할 컴포넌트 추가

{ 
  path: '/:notFound(.*)',   // notFound 아닌 아무 파라미터 이름도 상관없다.
  component: NotFound       // NotFound 페이지로 이동
}
  • . : 임의의 하나의 문자와 일치한다.
  • * : 최대한 많은 문자와 일치하려고 노력한다.
  • => .* : 모든 문자와 일치한다.

출력

 

! vue router 홈페이지(https://router.vuejs.org/) 이동 > Essentoals > Dynamic Route Matching > Catch all / 404 Not found Route 참고

Comments