⊗jsvuPmCmEE 65 of 72 menu

การปล่อยเหตุการณ์ใน Vue

อย่างที่คุณทราบแล้ว ข้อมูลจะเคลื่อนที่จากคอมโพเนนต์พ่อแม่ไปยังคอมโพเนนต์ลูก ตอนนี้เรามาดูกันว่าคอมโพเนนต์ลูกสามารถสื่อสารกับคอมโพเนนต์พ่อแม่ได้อย่างไร สิ่งนี้ทำได้โดยการปล่อยเหตุการณ์ มาดูกันในทางปฏิบัติ

สมมติว่าในคอมโพเนนต์พ่อแม่มีเมธอดบางอย่าง:

methods: { func() { alert('xxx'); } }

เราจะส่งเมธอดนี้เป็นพารามิเตอร์ไปยังคอมโพเนนต์ลูก:

<template> <User @show="func" /> </template>

เราจะกำหนดเหตุการณ์ที่ปล่อยออกมาในการตั้งค่า emits:

export default { emits: ['show'], data() { return { } } }

ตอนนี้ในคอมโพเนนต์ลูก เราจะสร้างปุ่มที่จัดการกับการคลิกบนมัน:

<template> <button @click="handle">btn</button> </template>

เราจะสร้างตัวจัดการการคลิก:

methods: { handle() { } }

ตอนนี้ในตัวจัดการการคลิก เราจะทำให้ฟังก์ชันของพ่อแม่ถูกเรียก เพื่อทำสิ่งนี้ เราจะปล่อยเหตุการณ์โดยใช้ฟังก์ชัน $emit โดยกำหนดชื่อเหตุการณ์ที่ปล่อยเป็นพารามิเตอร์:

methods: { handle() { this.$emit('show'); } }

ส่งฟังก์ชันสองฟังก์ชันไปยังคอมโพเนนต์ลูก สร้างปุ่มสองปุ่มในคอมโพเนนต์ลูก แต่ละปุ่มจะเรียกใช้ฟังก์ชันหนึ่งที่ส่งมา

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ