Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mengemas kini Data Induk daripada Komponen Kanak-kanak dalam Vue.js Menggunakan v-model?

Bagaimana untuk Mengemas kini Data Induk daripada Komponen Kanak-kanak dalam Vue.js Menggunakan v-model?

Linda Hamilton
Lepaskan: 2024-10-28 21:04:30
asal
723 orang telah melayarinya

How to Update Parent Data from Child Components in Vue.js Using v-model?

Mengemas kini Data Induk daripada Komponen Kanak-kanak dalam Vue.js

Dalam Vue.js, adalah penting untuk mengendalikan aliran data antara komponen induk dan anak dengan berkesan. Artikel ini membincangkan senario di mana anda ingin mengemas kini data induk daripada medan input dalam komponen anak.

Masalah:

Dalam Vue.js 2.0 dan ke atas, pengikatan dua hala telah ditamatkan. Apabila menggunakan prop untuk menghantar data daripada ibu bapa kepada anak, mutasi prop langsung tidak digalakkan kerana ia boleh membawa kepada amaran konsol.

Penyelesaian:

Untuk mengemas kini ibu bapa data, anda boleh menggunakan seni bina dipacu peristiwa dan komponen tersuai dengan model v. Model V menyediakan sintaks untuk pengikatan dua hala yang menggunakan peristiwa untuk berkomunikasi antara ibu bapa dan anak.

Pelaksanaan:

Buat komponen anak dengan templat yang termasuk medan input:

<code class="html"><template id="child">
  <input type="text" v-bind:value="value" v-on:input="updateValue($event.target.value)">
</template></code>
Salin selepas log masuk

Dalam skrip komponen anak, tambah prop 'nilai' dan kaedah 'updateValue' yang mengeluarkan peristiwa 'input' dengan nilai yang dikemas kini:

<code class="javascript">Vue.component('child', {
  template: '#child',

  props: ['value'],

  methods: {
    updateValue: function (value) {
      this.$emit('input', value);
    }
  }
});</code>
Salin selepas log masuk

Dalam paparan induk, buat contoh Vue dengan data induk dan gunakan komponen anak dengan model v:

<code class="html"><div id="app">
  <p>Parent value: {{ parentValue }}</p>
  <child v-model="parentValue"></child>
</div></code>
Salin selepas log masuk

Apabila nilai medan input dalam komponen anak berubah, 'updateValue' kaedah dipanggil dan nilai yang dikemas kini dipancarkan sebagai acara 'input'. Instance Vue induk menerima acara yang dipancarkan dan mengemas kini 'parentValue'nya dengan sewajarnya.

Atas ialah kandungan terperinci Bagaimana untuk Mengemas kini Data Induk daripada Komponen Kanak-kanak dalam Vue.js Menggunakan v-model?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan