Rumah hujung hadapan web View.js Kaedah pelaksanaan pemindahan data komponen dan pemindahan peristiwa dalam dokumentasi Vue

Kaedah pelaksanaan pemindahan data komponen dan pemindahan peristiwa dalam dokumentasi Vue

Jun 20, 2023 am 10:21 AM
pemindahan data penghantaran komponen vue penyampaian acara

Vue ialah rangka kerja bahagian hadapan yang popular Ia mempunyai ciri komponen, membolehkan pembangun menguraikan halaman yang kompleks kepada beberapa modul kecil dan bebas. Dalam Vue, pemindahan data dan pemindahan peristiwa antara komponen adalah topik yang sangat penting Dalam artikel ini, kami akan memperkenalkan secara terperinci kaedah pelaksanaan pemindahan data komponen dan pemindahan peristiwa dalam Vue.

1. Pemindahan data komponen

Dalam Vue, pemindahan data komponen dibahagikan kepada dua kategori, satu pemindahan komponen induk kepada komponen anak, dan satu lagi pemindahan anak penghantaran komponen kepada induk.

1. Komponen induk menghantar data kepada komponen anak

Komponen induk perlu menggunakan pilihan prop untuk menghantar data kepada komponen anak ialah cara untuk komponen anak menerima data yang dihantar oleh komponen induk. Hantar data kepada komponen anak melalui v-bind: nama atribut dalam komponen induk, dan terima data melalui pilihan props dalam komponen anak.

Pertama lihat kod dalam komponen induk:

<template>
  <div>
    <child-component :title="title"></child-component>
  </div>
</template>

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

export default {
  components: { ChildComponent },
  data () {
    return {
      title: 'this is the title'
    }
  }
}
</script>
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan komponen utama dan menghantar atribut tajuk kepada komponen kanak-kanak melalui komponen v-bind.

Kemudian lihat kod subkomponen:

<template>
  <div>
    <h1>{{ title }}</h1>
  </div>
</template>

<script>
export default {
  props: {
    title: {
      type: String,
      required: true
    }
  }
}
</script>
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan subkomponen dan menerima atribut tajuk yang diluluskan oleh komponen induk melalui pilihan props.

2. Subkomponen menghantar data kepada komponen induk

Untuk menghantar data daripada subkomponen kepada komponen induk, anda perlu menggunakan kaedah $emit ialah cara untuk subkomponen menghantar data kepada induk komponen. Gunakan kaedah $emit dalam komponen anak untuk mencetuskan peristiwa tersuai dan lulus data yang perlu dihantar Dengar peristiwa tersuai ini dalam komponen induk melalui nama @event dan terima data yang diluluskan oleh komponen anak dalam fungsi tindak balas acara.

Lihat kod dalam subkomponen dahulu:

<template>
  <div>
    <button @click="increment">{{ count }}</button>
  </div>
</template>

<script>
export default {
  data () {
    return {
      count: 0
    }
  },
  methods: {
    increment () {
      this.count++
      this.$emit('increment', this.count)
    }
  }
}
</script>
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan subkomponen dan menggunakan kaedah $emit untuk mencetuskan kenaikan acara tersuai apabila butang diklik Dan lulus nilai kiraan semasa sebagai parameter kepada komponen induk.

Kemudian lihat kod komponen induk:

<template>
  <div>
    <h1>{{ totalCount }}</h1>
    <child-component @increment="onChildIncrement"></child-component>
  </div>
</template>

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

export default {
  components: { ChildComponent },
  data () {
    return {
      totalCount: 0
    }
  },
  methods: {
    onChildIncrement (count) {
      this.totalCount += count
    }
  }
}
</script>
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan komponen induk dan apabila mendengar peristiwa kenaikan komponen anak, lulus nilai kiraan sebagai parameter kepada Dalam fungsi respons onChildIncrement, dan kemas kini nilai totalCount dalam fungsi respons.

2. Penghantaran acara komponen

Dalam Vue, penghantaran acara antara komponen boleh dicapai melalui bas acara dan vuex.

1. Bas acara

Bas acara ialah kaedah penghantaran acara yang mudah, dan semua komponen boleh mendaftarkan acara atau mencetuskan acara ke bas acara. Dalam Vue, anda boleh menggunakan sifat Vue.prototype.$bus untuk mencipta bas acara.

Mari kita lihat dahulu cara menggunakan bas acara:

// main.js中创建事件总线
import Vue from 'vue'

Vue.prototype.$bus = new Vue()

// 在需要传递事件的组件中注册事件和触发事件
this.$bus.$emit('my-event', data)

this.$bus.$on('my-event', (data) => { ... })
Salin selepas log masuk

Dalam kod di atas, kami mencipta bas acara melalui sifat Vue.prototype.$bus dalam fail main.js, dan kemudian dalam Dalam komponen yang perlu lulus acara, cetuskan acara tersuai acara saya melalui kaedah $emit, dan hantar data yang perlu dihantar sebagai parameter kepada fungsi tindak balas acara itu; perlu menerima acara, mendengar acara tersuai my- melalui kaedah $on, dan menerima data yang diluluskan dalam fungsi tindak balas acara.

2.vuex

vuex ialah penyelesaian pengurusan keadaan yang disyorkan secara rasmi. Ia meletakkan keadaan semua komponen dalam pepohon keadaan global Semua komponen boleh mengakses keadaan global daripada Dapatkan dan kemas kini status pokok itu. Dalam vuex, anda boleh menggunakan objek kedai untuk menyimpan keadaan global dan mengubah suai keadaan global melalui mutasi, tindakan dan pengambil.

Mari kita lihat dahulu cara menggunakan vuex:

// store.js文件
import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    count: 0
  },
  mutations: {
    increment (state) {
      state.count++
    }
  },
  actions: {
    asyncIncrement (context) {
      setTimeout(() => {
        context.commit('increment')
      }, 1000)
    }
  },
  getters: {
    doubleCount (state) {
      return state.count * 2
    }
  }
})

// 在组件中使用vuex
import { mapState, mapMutations, mapActions, mapGetters } from 'vuex'

export default {
  computed: {
    ...mapState({
      count: state => state.count
    }),
    ...mapGetters([
      'doubleCount'
    ])
  },
  methods: {
    ...mapMutations([
      'increment'
    ]),
    ...mapActions([
      'asyncIncrement'
    ])
  }
}
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan objek kedai yang menyimpan keadaan global dalam fail store.js dan menggunakan mutasi, tindakan dan getter untuk mengubah suai dan mendapatkan keadaan global; dalam komponen, memetakan keadaan, fungsi pengubahsuaian dan fungsi tindakan dalam stor melalui fungsi tambahan seperti mapState, mapMutations, mapActions dan mapGetters, dan menggunakannya dalam komponen.

Kesimpulan

Dalam Vue, pemindahan data dan pemindahan acara antara komponen adalah topik yang sangat penting Untuk senario dan keperluan yang berbeza, kita boleh menggunakan prop, $emit, bas acara dan vuex serta kaedah lain untuk. mencapai pemindahan data dan pemindahan peristiwa. Menguasai kemahiran ini membolehkan kami mengatur dan mengurus aplikasi Vue kami dengan lebih fleksibel.

Atas ialah kandungan terperinci Kaedah pelaksanaan pemindahan data komponen dan pemindahan peristiwa dalam dokumentasi Vue. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

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

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Gunakan menyediakan dan menyuntik dalam Vue untuk melaksanakan pemindahan data dan pengoptimuman prestasi antara komponen Gunakan menyediakan dan menyuntik dalam Vue untuk melaksanakan pemindahan data dan pengoptimuman prestasi antara komponen Jul 17, 2023 pm 07:19 PM

Gunakan menyediakan dan menyuntik dalam Vue untuk mencapai pemindahan data dan pengoptimuman prestasi antara komponen Dalam Vue, pemindahan data antara komponen adalah keperluan yang sangat biasa. Kadangkala kami ingin menyediakan data pada nod dalam pepohon komponen dan kemudian menggunakan data dalam komponen turunannya Dalam kes ini, kami boleh menggunakan penyediaan dan suntikan Vue untuk mencapai ini. Selain pemindahan data, menyediakan dan menyuntik juga boleh digunakan untuk pengoptimuman prestasi, mengurangkan tahap pemindahan prop dan meningkatkan prestasi komponen. prov

Bagaimana untuk menggunakan bahasa PHP untuk memanggil antara muka API untuk merealisasikan pemindahan data dan penyegerakan antara sistem? Bagaimana untuk menggunakan bahasa PHP untuk memanggil antara muka API untuk merealisasikan pemindahan data dan penyegerakan antara sistem? Sep 05, 2023 am 11:26 AM

Bagaimana untuk menggunakan bahasa PHP untuk memanggil antara muka API untuk merealisasikan pemindahan data dan penyegerakan antara sistem? Apabila membangun dan mereka bentuk sistem moden, kita selalunya perlu memindahkan dan menyegerakkan data antara sistem yang berbeza. Kaedah biasa ialah menggunakan antara muka API untuk melaksanakan komunikasi antara sistem. Artikel ini akan memperkenalkan cara menggunakan bahasa PHP untuk memanggil antara muka API untuk mencapai pemindahan data dan penyegerakan antara sistem. API (Antara Muka Pengaturcaraan Aplikasi) ialah cara pengaturcaraan untuk melaksanakan sistem yang berbeza

Cara melaksanakan komunikasi dan pemindahan data antara komponen ibu bapa dan anak dalam komponen Vue Cara melaksanakan komunikasi dan pemindahan data antara komponen ibu bapa dan anak dalam komponen Vue Oct 08, 2023 pm 09:51 PM

Vue ialah rangka kerja pembangunan bahagian hadapan yang popular yang menyediakan banyak fungsi dan mekanisme yang mudah untuk membantu kami membina aplikasi komponen yang boleh digunakan semula dan cekap. Dalam Vue, komunikasi komponen ibu bapa-anak dan pemindahan data adalah salah satu keperluan biasa. Artikel ini akan memperkenalkan secara terperinci cara melaksanakan komunikasi dan pemindahan data antara komponen ibu bapa dan anak dalam Vue dan memberikan contoh kod khusus. Dalam Vue, komunikasi antara komponen ibu bapa dan anak boleh dicapai melalui kaedah props dan $emit. Props ialah mekanisme untuk komponen induk menghantar data kepada komponen anak, dan $emi

Komunikasi komponen Vue: gunakan arahan v-bind untuk pemindahan data Komunikasi komponen Vue: gunakan arahan v-bind untuk pemindahan data Jul 07, 2023 pm 04:46 PM

Komunikasi komponen Vue: Gunakan arahan v-bind untuk pemindahan data Vue.js ialah rangka kerja bahagian hadapan yang popular yang menyediakan keupayaan pembangunan komponen yang berkuasa. Dalam aplikasi Vue, komunikasi komponen merupakan isu penting. Arahan v-bind ialah kaedah pemindahan data yang disediakan oleh rangka kerja Vue Artikel ini akan memperkenalkan cara menggunakan arahan v-bind untuk memindahkan data antara komponen. Dalam Vue, komunikasi komponen boleh dibahagikan kepada dua situasi: komunikasi komponen ibu bapa-anak dan komunikasi komponen adik-beradik. Di bawah ini kami akan memperkenalkan dari dua aspek ini masing-masing:

Pemahaman mendalam tentang penghantaran acara penyemak imbas: mendedahkan mekanisme menggelegak acara Pemahaman mendalam tentang penghantaran acara penyemak imbas: mendedahkan mekanisme menggelegak acara Feb 19, 2024 pm 07:43 PM

Mekanisme penghantaran acara dalam penyemak imbas: Meneroka misteri peristiwa menggelegak Acara ialah konsep penting dalam pembangunan bahagian hadapan, dan mekanisme penghantaran acara dalam penyemak imbas adalah lebih kritikal. Dalam pembangunan bahagian hadapan harian kami, pengikatan dan pemprosesan acara sering kali terlibat. Memahami mekanisme penyampaian acara, terutamanya prinsip menggelegak acara, boleh membantu kami memahami dan mengendalikan acara dengan lebih baik. Apabila melakukan pembangunan bahagian hadapan dalam penyemak imbas, halaman kami biasanya terdiri daripada elemen. Pada elemen ini kita boleh menambah pelbagai acara untuk bertindak balas kepada operasi pengguna. Dan bila

Cara menggunakan data di dalam komponen dan prop parameter komponen untuk mencapai pemindahan data dalam Vue Cara menggunakan data di dalam komponen dan prop parameter komponen untuk mencapai pemindahan data dalam Vue Jun 11, 2023 pm 02:03 PM

Vue ialah rangka kerja pembangunan bahagian hadapan yang sangat popular, di mana komponen merupakan bahan binaan yang sangat penting. Dalam Vue, data di dalam komponen dan prop parameter komponen boleh digunakan dengan baik bersama-sama untuk mencapai pemindahan data. Dalam komponen Vue, data ialah data keadaan di dalam komponen. Ia boleh diakses dan diubah suai oleh semua kaedah dalam komponen. Untuk menggunakan data di dalam komponen, anda boleh mengisytiharkannya dengan cara berikut: exportdefault{data(){

Masalah pemindahan data bahagian hadapan dan bahagian belakang yang dihadapi dalam pembangunan Vue Masalah pemindahan data bahagian hadapan dan bahagian belakang yang dihadapi dalam pembangunan Vue Oct 08, 2023 pm 01:25 PM

Masalah pemindahan data bahagian hadapan dan bahagian belakang yang dihadapi dalam pembangunan Vue memerlukan contoh kod khusus Dengan pembangunan teknologi bahagian hadapan, Vue, sebagai rangka kerja bahagian hadapan yang popular, semakin ramai pembangun memilih untuk menggunakan Vue untuk membangunkan aplikasi Web. . Dalam proses pembangunan Vue, penghantaran data front-end dan back-end adalah pautan yang sangat penting. Artikel ini akan memperkenalkan beberapa masalah pemindahan data bahagian hadapan dan belakang yang biasa dalam pembangunan Vue, dan menyediakan contoh kod khusus untuk menyelesaikan masalah ini. Format pemindahan data bahagian hadapan dan bahagian belakang tidak bersatu Semasa proses pemindahan data bahagian hadapan dan belakang,

Bagaimana untuk menggunakan penghalaan dalam Vue untuk melaksanakan pemindahan data dan pengurusan keadaan antara halaman? Bagaimana untuk menggunakan penghalaan dalam Vue untuk melaksanakan pemindahan data dan pengurusan keadaan antara halaman? Jul 21, 2023 am 08:18 AM

Bagaimana untuk menggunakan penghalaan dalam Vue untuk melaksanakan pemindahan data dan pengurusan keadaan antara halaman? Dalam Vue, Router ialah salah satu pemalam teras untuk bertukar antara halaman. Selain lompatan halaman, penghalaan juga boleh digunakan untuk melaksanakan pemindahan data dan pengurusan status. Artikel ini akan memperkenalkan cara menggunakan pemalam penghalaan Vue (VueRouter) untuk merealisasikan pemindahan data dan pengurusan status antara halaman, dan menyediakan contoh kod yang sepadan. Penggunaan asas penghalaan VueRouter ialah pemalam penghalaan rasmi Vue.js

See all articles