Latihan 2 dari materi Emits di Vue — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Starter-nya sudah punya val mulai 5, fungsi increment dan decrement, <span id="val">, dan child Pengatur berisi <button id="dec">-1</button> dan <button id="inc2">+1</button>. Sambungkan lewat dua event:
Di Pengatur, tambahkan opsi emits: ["kurang", "tambah"].
Di template-nya, tombol -1 memanggil $emit('kurang') dan tombol +1 memanggil $emit('tambah') lewat @click.
Di bawah #val, ganti komentar TODO dengan <component :is="Pengatur" @kurang="decrement" @tambah="increment" />.
Yang dicek:
Sebelum diklik, #val berisi 5.
Setelah #dec diklik, #val berisi 4; dari awal lagi, setelah #inc2 diklik, 6.
Pengatur menyatakan kedua event di emits dan mengirim masing-masing dengan $emit.
Parent mendengarkan dengan @kurang= dan @tambah=.
Hint
Satu child boleh mengirim beberapa event. Tiap tombol mengirim event-nya sendiri, dan parent memilih fungsi untuk masing-masing.
Daftarkan kurang dan tambah di opsi emits. Tombol -1 memanggil $emit('kurang'), tombol +1 memanggil $emit('tambah'), dan parent menulis @kurang="decrement" @tambah="increment".