51. Validating Props

npm create vue@latest


이 강의에서는 컴포넌트에서 props의 값들을 검증하는 방법에 대해 배우게 됩니다.
요약하면 다음과 같습니다:

  1. Props는 부모 컴포넌트에서 자식 컴포넌트로 전달되는 데이터입니다.
    이 데이터의 값들을 검증하여 애플리케이션을 디버깅하는 데 도움이 됩니다.
  2. User 컴포넌트에서 age라는 prop을 받고, 이를 숫자 값으로만 받아들이도록 유형을 검증합니다.
  3. Props 객체 내에서 각 prop에 대한 검증 규칙을 설정할 수 있습니다.
    예를 들어, type, required, default 등의 키를 사용합니다.
  4. typeprop의 데이터 유형을 지정하며, 여러 유형을 배열로 지정할 수도 있습니다.
  5. required는 해당 prop이 필수적인지 여부를 나타냅니다.
    defaultprop에 기본값을 설정합니다.
  6. validator 함수를 사용하여 사용자 정의 검증을 수행할 수 있습니다.
    이 함수는 prop의 값을 받아 true 또는 false를 반환합니다.
  7. 예를 들어, age가 130세 미만인지 검증하여 그렇지 않은 경우 오류 메시지를 출력합니다.
  8. validator 함수는 컴포넌트 인스턴스가 생성되기 전에 실행되므로, 컴포넌트의 data, computed, methods에 접근할 수 없습니다.

이 강의를 통해 props의 type(유형), required(필수 여부), default(기본값), validator(사용자 정의 검증) 등 다양한 방법으로 props를 검증하는 방법을 배웠습니다.

App.vue
<script lang="ts">
   import Greeting from "@/components/Greeting.vue";
   import User from "@/components/User.vue";
   export default {
      name: 'App',
      components: {
         Greeting,
         User,
      },
      data() {
         return {
            age: 20,
         }
      },
      methods: {
         updateAge(num: number) {
            this.age += num;
         }
      }
   }
</script>

<template>
   <p>App.vue</p>
   <Greeting :age="age" />
   <User :age="age" @age-change="updateAge" />
</template>