了解です!

では続けて 第2章 2.4 型安全なdefinePropsdefineEmitsの使い方 に進みます。


第2章 2.4 型安全なdefinePropsdefineEmitsの使い方

ここでは、definePropsdefineEmits に型エイリアス(type)やインターフェース(interface)を使って整理する方法 を説明します。


【変換前】子コンポーネントでそのまま型を書くパターン

<script lang="ts" setup>
// propsとemitsの型をここで直接書いている
const props = defineProps<{
  count: number;
}>();

const emit = defineEmits<{
  (event: 'increment'): void;
}>();
</script>

これでも動くけど、


【変換後】型エイリアス / インターフェースを使った整理パターン

型ファイルを作る(例: types/child.ts

// 子コンポーネントのpropsの型
export interface ChildProps {
  count: number;
}

// 子コンポーネントのemitsの型
export type ChildEmits = {
  (event: 'increment'): void;
};