cari
Rumahpembangunan bahagian belakangtutorial phpKomunikasi komponen Vue: menggunakan pendengar acara untuk pemindahan data

Komunikasi komponen Vue: menggunakan pendengar acara untuk pemindahan data

Jul 07, 2023 am 11:55 AM
komunikasikomponen vuependengar acara

Komunikasi komponen Vue: menggunakan pendengar acara untuk pemindahan data

Dalam pembangunan Vue, komunikasi antara komponen adalah masalah biasa. Vue menyediakan pelbagai kaedah komunikasi pilihan, salah satu kaedah yang biasa digunakan ialah menggunakan pendengar acara untuk pemindahan data. Dalam artikel ini, kami akan memperkenalkan kaedah menggunakan pendengar acara untuk komunikasi komponen dan memberikan contoh kod yang sepadan.

  1. Komponen induk mendengar peristiwa komponen anak

Dalam Vue, komponen anak boleh mencetuskan peristiwa tersuai melalui kaedah $emit dan memindahkan data dengan menghantar parameter. Komponen induk boleh mendengar peristiwa komponen anak melalui arahan v-on dan mendapatkan data yang diluluskan dalam fungsi panggil balik. $emit方法触发一个自定义事件,并通过传递参数实现数据的传递。父组件可以通过v-on指令监听子组件的事件,并在回调函数中获取传递的数据。

下面的示例中,我们创建了一个父组件ParentComponent和一个子组件ChildComponent。子组件中定义了一个按钮,当按钮被点击时,会触发一个名为childEvent的自定义事件,并传递一个参数message。父组件通过v-on指令监听子组件的childEvent事件,并在回调函数中获取传递的参数。

<template>
  <div>
    <child-component v-on:childEvent="handleChildEvent"></child-component>
    <p>从子组件接收到的数据:{{ receivedData }}</p>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  data() {
    return {
      receivedData: ''
    };
  },
  methods: {
    handleChildEvent(data) {
      this.receivedData = data;
    }
  }
};
</script>
<template>
  <div>
    <button @click="triggerEvent">触发事件</button>
  </div>
</template>

<script>
export default {
  methods: {
    triggerEvent() {
      this.$emit('childEvent', 'Hello, Vue!');
    }
  }
};
</script>

当点击子组件中的按钮时,父组件会接收到传递的参数Hello, Vue!,并将其显示在页面上。

  1. 子组件监听父组件事件

除了父组件监听子组件事件外,子组件也可以通过$on方法监听父组件触发的事件。这种方式适用于子组件需要主动获取父组件数据的场景。

以下示例中,我们修改了前面的代码,让父组件在初始化时触发一个parentEvent事件,并传递一个参数data。子组件通过$on方法监听父组件的parentEvent事件,并在回调函数中获取传递的数据。

<!-- 父组件 -->
<template>
  <div>
    <child-component></child-component>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  mounted() {
    this.$emit('parentEvent', 'Hello, Vue!');
  }
};
</script>
<!-- 子组件 -->
<template>
  <div>
    <p>从父组件接收到的数据:{{ receivedData }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      receivedData: ''
    };
  },
  mounted() {
    this.$parent.$on('parentEvent', this.handleParentEvent);
  },
  methods: {
    handleParentEvent(data) {
      this.receivedData = data;
    }
  }
};
</script>

在这个示例中,父组件在 mounted 钩子中触发了 parentEvent 事件,并传递了参数 Hello, Vue!。子组件通过 $on 方法监听了父组件的 parentEvent

Dalam contoh berikut, kami mencipta komponen induk ParentComponent dan komponen anak ChildComponent. Butang ditakrifkan dalam komponen anak Apabila butang diklik, acara tersuai bernama childEvent akan dicetuskan dan parameter mesej akan dihantar. Komponen induk mendengar acara childEvent komponen anak melalui arahan v-on dan mendapatkan parameter yang diluluskan dalam fungsi panggil balik.

rrreeerrreee

Apabila butang dalam komponen anak diklik, komponen induk akan menerima parameter yang diluluskan Hello, Vue! dan memaparkannya pada halaman.

    Komponen kanak-kanak mendengar peristiwa komponen induk

    🎜Selain komponen induk mendengar peristiwa komponen kanak-kanak, komponen kanak-kanak juga boleh mendengar peristiwa yang dicetuskan oleh komponen induk melalui $on kaedah. Kaedah ini sesuai untuk senario di mana komponen kanak-kanak perlu secara aktif mendapatkan data komponen induk. 🎜🎜Dalam contoh berikut, kami mengubah suai kod sebelumnya supaya komponen induk mencetuskan acara parentEvent semasa pemulaan dan menghantar parameter data. Komponen anak mendengar acara parentEvent komponen induk melalui kaedah $on dan memperoleh data yang diluluskan dalam fungsi panggil balik. 🎜rrreeerrreee🎜Dalam contoh ini, komponen induk menyalakan acara parentEvent dalam cangkuk mounted, melepasi parameter Hello, Vue!. Komponen anak mendengar acara parentEvent komponen induk melalui kaedah $on dan memperoleh data yang diluluskan dalam fungsi panggil balik. 🎜🎜Melalui dua kaedah di atas, kita boleh mencapai komunikasi yang fleksibel dalam komponen Vue, supaya komponen boleh memindahkan data antara satu sama lain dan berinteraksi. Anda boleh memilih kaedah yang sesuai untuk komunikasi komponen berdasarkan senario perniagaan tertentu untuk meningkatkan organisasi dan kebolehselenggaraan kod anda. 🎜🎜Ringkasan: 🎜🎜Artikel ini memperkenalkan kaedah menggunakan pendengar acara untuk komunikasi komponen dan memberikan contoh kod yang sepadan. Sama ada komponen induk mendengar peristiwa komponen anak, atau komponen anak mendengar peristiwa komponen induk, ini adalah kaedah komunikasi komponen biasa dalam Vue. Dengan cara ini, kami boleh mencapai pemindahan data yang fleksibel dan interaksi komponen, memberikan lebih banyak kemungkinan untuk pembangunan Vue. 🎜

Atas ialah kandungan terperinci Komunikasi komponen Vue: menggunakan pendengar acara untuk pemindahan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Bagaimanakah anda dapat melindungi daripada serangan skrip lintas tapak (XSS) yang berkaitan dengan sesi?Bagaimanakah anda dapat melindungi daripada serangan skrip lintas tapak (XSS) yang berkaitan dengan sesi?Apr 23, 2025 am 12:16 AM

Untuk melindungi permohonan dari serangan XSS yang berkaitan dengan sesi, langkah-langkah berikut diperlukan: 1. Tetapkan bendera httponly dan selamat untuk melindungi kuki sesi. 2. Kod eksport untuk semua input pengguna. 3. Melaksanakan Dasar Keselamatan Kandungan (CSP) untuk mengehadkan sumber skrip. Melalui dasar-dasar ini, serangan XSS yang berkaitan dengan sesi dapat dilindungi dengan berkesan dan data pengguna dapat dipastikan.

Bagaimana anda boleh mengoptimumkan prestasi sesi PHP?Bagaimana anda boleh mengoptimumkan prestasi sesi PHP?Apr 23, 2025 am 12:13 AM

Kaedah untuk mengoptimumkan prestasi sesi PHP termasuk: 1. Mula sesi kelewatan, 2. Gunakan pangkalan data untuk menyimpan sesi, 3. Data sesi kompres, 4. Mengurus kitaran hayat sesi, dan 5. Melaksanakan perkongsian sesi. Strategi ini dapat meningkatkan kecekapan aplikasi dalam persekitaran konkurensi yang tinggi.

Apakah tetapan konfigurasi sesi.gc_maxlifetime?Apakah tetapan konfigurasi sesi.gc_maxlifetime?Apr 23, 2025 am 12:10 AM

Thesession.gc_maxlifetimesettinginphpdeterminesthelifespanofsessiondata, setInseconds.1) it'sconfiguredinphp.iniorviaini_set (). 2) abalanceisneededtoavoidperformanceissuesandunexpectedlogouts.3) php'sgarbageCollectionisprobabilistic, influedbygc_probabi

Bagaimana anda mengkonfigurasi nama sesi dalam php?Bagaimana anda mengkonfigurasi nama sesi dalam php?Apr 23, 2025 am 12:08 AM

Dalam PHP, anda boleh menggunakan fungsi session_name () untuk mengkonfigurasi nama sesi. Langkah -langkah tertentu adalah seperti berikut: 1. Gunakan fungsi session_name () untuk menetapkan nama sesi, seperti session_name ("my_session"). 2. Selepas menetapkan nama sesi, hubungi session_start () untuk memulakan sesi. Mengkonfigurasi nama sesi boleh mengelakkan konflik data sesi antara pelbagai aplikasi dan meningkatkan keselamatan, tetapi memberi perhatian kepada keunikan, keselamatan, panjang dan penetapan masa sesi.

Berapa kerapkah anda menjana semula ID sesi?Berapa kerapkah anda menjana semula ID sesi?Apr 23, 2025 am 12:03 AM

ID sesi hendaklah dijadikan semula secara teratur pada log masuk, sebelum operasi sensitif, dan setiap 30 minit. 1. Meningkatkan semula ID Sesi semasa log masuk untuk mengelakkan serangan tetap sesi. 2. Regenerate sebelum operasi sensitif untuk meningkatkan keselamatan. 3. Penjanaan semula secara berkala mengurangkan risiko penggunaan jangka panjang, tetapi pengalaman pengguna perlu ditimbang.

Bagaimana anda menetapkan parameter cookie sesi dalam php?Bagaimana anda menetapkan parameter cookie sesi dalam php?Apr 22, 2025 pm 05:33 PM

Menetapkan Parameter Cookie Sesi di PHP boleh dicapai melalui fungsi session_set_cookie_params (). 1) Gunakan fungsi ini untuk menetapkan parameter, seperti masa tamat, laluan, nama domain, bendera keselamatan, dan lain -lain; 2) hubungi session_start () untuk membuat parameter berkuatkuasa; 3) menyesuaikan parameter secara dinamik mengikut keperluan, seperti status log masuk pengguna; 4) Perhatikan untuk menetapkan bendera selamat dan httponly untuk meningkatkan keselamatan.

Apakah tujuan utama menggunakan sesi dalam PHP?Apakah tujuan utama menggunakan sesi dalam PHP?Apr 22, 2025 pm 05:25 PM

Tujuan utama menggunakan sesi dalam PHP adalah untuk mengekalkan status pengguna antara halaman yang berbeza. 1) Sesi dimulakan melalui fungsi session_start (), mewujudkan ID sesi yang unik dan menyimpannya dalam cookie pengguna. 2) Data sesi disimpan di pelayan, yang membolehkan data diluluskan antara permintaan yang berbeza, seperti status log masuk dan kandungan keranjang belanja.

Bagaimanakah anda boleh berkongsi sesi di seluruh subdomain?Bagaimanakah anda boleh berkongsi sesi di seluruh subdomain?Apr 22, 2025 pm 05:21 PM

Bagaimana untuk berkongsi sesi antara subdomain? Dilaksanakan dengan menetapkan kuki sesi untuk nama domain biasa. 1. Tetapkan domain cookie sesi ke .example.com di sebelah pelayan. 2. Pilih kaedah penyimpanan sesi yang sesuai, seperti memori, pangkalan data atau cache yang diedarkan. 3. Lulus ID Sesi melalui kuki, dan pelayan mengambil semula dan mengemas kini data sesi berdasarkan ID.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan