Vueのイベントは @click のようなディレクティブで書きます。頻出パターンを押さえて、TODOアプリに繋げます。
@clickの基本
<button @click="handleClick">Click</button>
handleClick は script setup 内で定義します。
<script setup>
const handleClick = () => {
alert("クリック")
}
</script>
引数付きで呼びたいとき
一覧の削除などで引数が必要なときは次のように書けます。
<button @click="removeTodo(todo.id)">削除</button>
Reactの onClick={() => ...} と似た役割です。
入力イベントとv-model
Vueは入力同期を v-model で書けるため、@input を直接使うよりシンプルになることが多いです。
ただし、入力時に即処理したい場合は @input を使います。
練習問題
- ボタンで現在時刻を表示してみましょう。
- 入力が空なら追加ボタンをdisabledにしてみましょう。



コメント