Jadual Kandungan
{{ count }}
{{ message }}
Rumah hujung hadapan web View.js Cara berkongsi dan memindahkan data dalam komponen Vue

Cara berkongsi dan memindahkan data dalam komponen Vue

Oct 08, 2023 am 11:00 AM
Perkongsian data: vuex Pemindahan data: props Komunikasi komponen: eventbus

Cara berkongsi dan memindahkan data dalam komponen Vue

Cara berkongsi dan memindahkan data dalam komponen Vue

Dalam Vue, komponen adalah bahagian teras dalam membina aplikasi web. Dalam komponen, perkongsian dan pemindahan data adalah sangat penting. Artikel ini akan memperkenalkan secara terperinci cara berkongsi dan memindahkan data dalam komponen Vue, dan memberikan contoh kod khusus.

Perkongsian data merujuk kepada perkongsian data yang sama antara berbilang komponen Perkongsian data boleh dicapai walaupun komponen ini terletak dalam hierarki yang berbeza. Pemindahan data merujuk kepada pemindahan data dari satu komponen ke komponen lain, biasanya melalui pemindahan antara komponen induk dan anak.

  1. Perkongsian Data

1.1 Menggunakan Vuex

Vuex ialah model pengurusan berbilang yang disediakan oleh Vue komponen untuk berkongsi data yang sama. Berikut ialah contoh mudah menggunakan Vuex untuk mencapai perkongsian data:

// 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++
    }
  }
})

// App.vue
<template>
  <div>
    <h1 id="count">{{ count }}</h1>
    <button @click="increment">Increment</button>
  </div>
</template>

<script>
export default {
  computed: {
    count() {
      return this.$store.state.count
    }
  },
  methods: {
    increment() {
      this.$store.commit('increment')
    }
  }
}
</script>
Salin selepas log masuk

Dalam contoh di atas, kami berkongsi data dengan mengimport Vuex dan mencipta objek kedai. Dalam komponen App.vue, dapatkan data kiraan dikongsi melalui atribut yang dikira dan panggil kaedah kenaikan melalui atribut kaedah untuk mengemas kini data. Perlu diingatkan bahawa dalam setiap komponen yang perlu berkongsi data, anda perlu mengimport Vuex dan menggunakan keadaan yang sepadan.

1.2 Menggunakan provide dan inject

Selain menggunakan Vuex, Vue juga menyediakan cara yang lebih mudah untuk mencapai perkongsian data, iaitu menggunakan provide dan inject. Berikut ialah contoh penggunaan provide dan inject untuk mencapai perkongsian data:

// App.vue
<template>
  <div>
    <h1 id="count">{{ count }}</h1>
    <button @click="increment">Increment</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      count: 0
    }
  },
  provide() {
    return {
      count: this.count,
      increment: this.increment
    }
  },
  methods: {
    increment() {
      this.count++
    }
  }
}
</script>

// Child.vue
<template>
  <div>
    <h2 id="count">{{ count }}</h2>
    <button @click="increment">Increment in Child</button>
  </div>
</template>

<script>
export default {
  inject: ['count', 'increment']
}
</script>
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan provide dalam komponen induk App.vue untuk berkongsi data kiraan dan kaedah kenaikan. Gunakan inject dalam child component Child.vue untuk menyuntik data dan kaedah yang disediakan oleh komponen induk. Dengan cara ini, data komponen induk boleh diakses terus dan dikemas kini dalam komponen anak.

  1. Penghantaran data

2.1 Menggunakan prop

Dalam Vue, anda boleh menghantar data daripada induk props attribute Komponen dihantar kepada komponen anak. Berikut ialah contoh menggunakan prop untuk menghantar data:

// Parent.vue
<template>
  <div>
    <h1 id="message">{{ message }}</h1>
    <Child :message="message" />
  </div>
</template>

<script>
import Child from './Child.vue'

export default {
  data() {
    return {
      message: 'Hello Vue!'
    }
  },
  components: {
    Child
  }
}
</script>

// Child.vue
<template>
  <div>
    <h2 id="message">{{ message }}</h2>
  </div>
</template>

<script>
export default {
  props: ['message']
}
</script>
Salin selepas log masuk

Dalam contoh di atas, kami menghantar data mesej dalam komponen induk Parent.vue kepada komponen anak Child.vue melalui atribut props, dan komponen anak melepasi atribut props untuk menerima data yang diluluskan oleh komponen induk.

  1. Ringkasan

Melalui contoh kod di atas, kami telah mempelajari cara berkongsi dan memindahkan data dalam komponen Vue. Anda boleh memilih penyelesaian yang sesuai berdasarkan keperluan perniagaan khusus untuk merealisasikan perkongsian dan pemindahan data, dan meningkatkan kecekapan pembangunan dan kebolehselenggaraan aplikasi Web.

Atas ialah kandungan terperinci Cara berkongsi dan memindahkan data dalam komponen 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)

Apakah kaedah menukar rentetan vue.js ke dalam objek? Apakah kaedah menukar rentetan vue.js ke dalam objek? Apr 07, 2025 pm 09:18 PM

Menggunakan json.parse () rentetan ke objek adalah yang paling selamat dan paling efisien: pastikan rentetan mematuhi spesifikasi JSON dan mengelakkan kesilapan biasa. Gunakan cuba ... menangkap untuk mengendalikan pengecualian untuk meningkatkan keteguhan kod. Elakkan menggunakan kaedah eval (), yang mempunyai risiko keselamatan. Untuk rentetan JSON yang besar, parsing parsing atau parsing tak segerak boleh dipertimbangkan untuk mengoptimumkan prestasi.

Vue.js vs React: Pertimbangan khusus projek Vue.js vs React: Pertimbangan khusus projek Apr 09, 2025 am 12:01 AM

Vue.js sesuai untuk projek kecil dan sederhana dan lelaran yang cepat, sementara React sesuai untuk aplikasi besar dan kompleks. 1) Vue.js mudah digunakan dan sesuai untuk situasi di mana pasukan tidak mencukupi atau skala projek kecil. 2) React mempunyai ekosistem yang lebih kaya dan sesuai untuk projek dengan prestasi tinggi dan keperluan fungsional yang kompleks.

Adakah vue.js sukar belajar? Adakah vue.js sukar belajar? Apr 04, 2025 am 12:02 AM

Vue.js tidak sukar untuk dipelajari, terutamanya bagi pemaju dengan asas JavaScript. 1) Reka bentuk progresif dan sistem responsif memudahkan proses pembangunan. 2) Pembangunan berasaskan komponen menjadikan pengurusan kod lebih cekap. 3) Contoh penggunaan menunjukkan penggunaan asas dan lanjutan. 4) Kesilapan biasa boleh disahpepijat melalui Vuedevtools. 5) Pengoptimuman prestasi dan amalan terbaik, seperti menggunakan V-IF/V-Show dan atribut utama, boleh meningkatkan kecekapan aplikasi.

Adakah Vue digunakan untuk frontend atau backend? Adakah Vue digunakan untuk frontend atau backend? Apr 03, 2025 am 12:07 AM

Vue.js terutamanya digunakan untuk pembangunan front-end. 1) Ia adalah rangka kerja JavaScript yang ringan dan fleksibel yang difokuskan pada membina antara muka pengguna dan aplikasi satu halaman. 2) Inti Vue.js adalah sistem data responsifnya, dan pandangannya dikemas kini secara automatik apabila data berubah. 3) Ia menyokong pembangunan komponen, dan UI boleh dibahagikan kepada komponen bebas dan boleh diguna semula.

Cara menggunakan bootstrap di vue Cara menggunakan bootstrap di vue Apr 07, 2025 pm 11:33 PM

Menggunakan bootstrap dalam vue.js dibahagikan kepada lima langkah: Pasang bootstrap. Import bootstrap di main.js. Gunakan komponen bootstrap secara langsung dalam templat. Pilihan: Gaya tersuai. Pilihan: Gunakan pemalam.

Cara menambah fungsi ke butang untuk vue Cara menambah fungsi ke butang untuk vue Apr 08, 2025 am 08:51 AM

Anda boleh menambah fungsi ke butang VUE dengan mengikat butang dalam templat HTML ke kaedah. Tentukan kaedah dan tulis logik fungsi dalam contoh Vue.

Cara merujuk fail js dengan vue.js Cara merujuk fail js dengan vue.js Apr 07, 2025 pm 11:27 PM

Terdapat tiga cara untuk merujuk kepada fail JS dalam vue.js: Secara langsung tentukan jalan menggunakan & lt; skrip & gt; tag ;; import dinamik menggunakan cangkuk kitaran hayat yang dipasang (); dan mengimport melalui Perpustakaan Pengurusan Negeri VUEX.

Cara Menggunakan Watch di Vue Cara Menggunakan Watch di Vue Apr 07, 2025 pm 11:36 PM

Pilihan Watch di Vue.js membolehkan pemaju mendengar perubahan dalam data tertentu. Apabila data berubah, tontonkan mencetuskan fungsi panggil balik untuk melakukan paparan kemas kini atau tugas lain. Pilihan konfigurasinya termasuk segera, yang menentukan sama ada untuk melaksanakan panggilan balik dengan serta -merta, dan mendalam, yang menentukan sama ada untuk mendengarkan secara rekursif terhadap objek atau tatasusunan.

See all articles