8.2 コンポーザブル関数の分離と再利用


■ 要点まとめ


■ なぜコンポーザブル関数を作るのか?

理由 説明
DRY原則を守るため 同じロジックを何度もコピペしない
保守性を上げるため ロジック修正が1ヶ所で済む
テストしやすくするため 関数単位で単体テストできる
再利用性を高めるため 別コンポーネントでも使える
スッキリしたコンポーネントにするため 見た目とロジックを分離できる

■ 作り方の基本ステップ

  1. ロジックを探す
  2. 共通化できるものを抜き出す
  3. 新しい関数(composable)にまとめる
  4. 型定義も付ける
  5. コンポーネントから呼び出す

■ ✅ Before(コンポーネントにロジックが直書き)

// ファイル名: ParentComponent.vue
<script setup lang="ts">
import { ref, watch } from 'vue';

const text = ref('');
const isValid = ref(true);

watch(text, (newText) => {
  isValid.value = newText.length <= 10;
});
</script>