Rumah hujung hadapan web View.js 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
vue Pengoptimuman prestasi provide inject pemindahan data

Vue menggunakan menyediakan dan menyuntik 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.

menyediakan dan menyuntik ialah ciri lanjutan Vue yang boleh menyuntik data ke dalam kejadian komponen, menjadikannya tersedia di seluruh pepohon komponen. Penggunaannya sangat mudah, mari kita lihat contoh dahulu:

// 父组件
export default {
  provide: {
    message: 'Hello from parent'
  }
}

// 子组件
export default {
  inject: ['message'],
  mounted() {
    console.log(this.message); // 输出:Hello from parent
  }
}
Salin selepas log masuk

Dalam komponen induk, kami menyediakan data mesej melalui pilihan sediakan, dan kemudian menyuntik data ini melalui pilihan suntikan dalam komponen anak. Data yang disediakan oleh komponen induk boleh diakses melalui ini.mesej dalam komponen anak.

Selain menyediakan satu data, kami juga boleh menyediakan objek yang mengandungi berbilang data. Dalam pilihan menyediakan, kita boleh menggunakan fungsi untuk mengembalikan objek, supaya data boleh disediakan secara dinamik.

// 父组件
export default {
  provide() {
    return {
      message: 'Hello from parent',
      count: 1
    }
  }
}
Salin selepas log masuk

Dalam komponen kanak-kanak, suntik objek ini melalui pilihan suntikan, dan anda boleh terus mengakses data di dalamnya.

// 子组件
export default {
  inject: ['message', 'count'],
  mounted() {
    console.log(this.message); // 输出:Hello from parent
    console.log(this.count);   // 输出:1
  }
}
Salin selepas log masuk

Salah satu faedah menggunakan provide and inject ialah pemindahan data antara komponen lebih ringkas dan mengurangkan hierarki props. Terutama apabila menghantar data merentasi komponen tahap, kaedah prop nampaknya sangat menyusahkan. Menggunakan menyediakan dan menyuntik boleh mengurangkan lebihan kod dan meningkatkan kecekapan pembangunan.

Faedah lain ialah peningkatan prestasi komponen. Apabila menggunakan prop untuk pemindahan data, setiap lapisan komponen perlu menggunakan prop untuk memindahkan data, dan prop adalah sehala dan hanya boleh dipindahkan daripada komponen peringkat atas ke komponen peringkat bawah. Menggunakan menyediakan dan menyuntik boleh melangkau komponen perantaraan dan menghantar data terus kepada komponen yang diperlukan.

Contoh berikut boleh menggambarkan masalah ini dengan lebih baik:

// 父组件
export default {
  data() {
    return {
      count: 1
    }
  },
  provide() {
    return {
      message: 'Hello from parent',
      getCount: () => this.count
    }
  }
}

// 子组件A
export default {
  inject: ['message', 'getCount'],
  mounted() {
    console.log(this.message);   // 输出:Hello from parent
    console.log(this.getCount()); // 输出:1
  }
}

// 子组件B
export default {
  inject: ['message', 'getCount'],
  mounted() {
    console.log(this.message);   // 输出:Hello from parent
    console.log(this.getCount()); // 输出:1
  }
}

// 子组件C
export default {
  inject: ['message', 'getCount'],
  mounted() {
    console.log(this.message);   // 输出:Hello from parent
    console.log(this.getCount()); // 输出:1
  }
}
Salin selepas log masuk

Dalam contoh ini, komponen induk menyediakan data dan kaedah, yang kemudiannya disuntik ke dalam komponen anak A, komponen anak B dan komponen anak C melalui pilihan sediakan. Kita dapat melihat bahawa tanpa mengira tahap komponen anak, data dan kaedah komponen induk boleh diakses secara terus.

Untuk meringkaskan, penyediaan dan suntikan Vue ialah cara yang sangat mudah untuk memindahkan data antara komponen, yang bukan sahaja memudahkan kod, tetapi juga meningkatkan prestasi. Tetapi perlu diingatkan bahawa menyediakan dan menyuntik adalah ciri tidak responsif, iaitu, apabila data yang disediakan oleh menyediakan berubah, pemaparan semula sub-komponen tidak akan dicetuskan. Oleh itu, apabila menggunakan menyediakan dan menyuntik, anda perlu memberi perhatian kepada isu kemas kini data.

Di atas adalah pengenalan untuk menggunakan menyediakan dan menyuntik dalam Vue untuk mencapai pemindahan data dan pengoptimuman prestasi antara komponen.

Atas ialah kandungan terperinci Gunakan menyediakan dan menyuntik dalam Vue untuk melaksanakan pemindahan data dan pengoptimuman prestasi antara komponen. 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)

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 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.

Apakah yang dimaksudkan dengan pembangunan Vue Multi-Page? Apakah yang dimaksudkan dengan pembangunan Vue Multi-Page? Apr 07, 2025 pm 11:57 PM

Pembangunan pelbagai halaman Vue adalah cara untuk membina aplikasi menggunakan rangka kerja VUE.JS, di mana permohonan dibahagikan kepada halaman berasingan: Penyelenggaraan kod: Memisahkan aplikasi ke dalam beberapa halaman boleh menjadikan kod lebih mudah untuk dikendalikan dan diselenggarakan. Modularity: Setiap halaman boleh digunakan sebagai modul yang berasingan untuk penggunaan semula dan penggantian mudah. Routing mudah: Navigasi antara halaman boleh diuruskan melalui konfigurasi penghalaan mudah. Pengoptimuman SEO: Setiap halaman mempunyai URL sendiri, yang membantu SEO.

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 kembali ke halaman sebelumnya oleh Vue Cara kembali ke halaman sebelumnya oleh Vue Apr 07, 2025 pm 11:30 PM

Vue.js mempunyai empat kaedah untuk kembali ke halaman sebelumnya: $ router.go (-1) $ router.back () menggunakan & lt; router-link to = & quot;/& quot; Komponen Window.History.Back (), dan pemilihan kaedah bergantung pada tempat kejadian.

Cara Menggunakan Vue Traversal Cara Menggunakan Vue Traversal Apr 07, 2025 pm 11:48 PM

Terdapat tiga kaedah umum untuk vue.js untuk melintasi tatasusunan dan objek: Arahan V-untuk digunakan untuk melintasi setiap elemen dan membuat templat; Arahan V-mengikat boleh digunakan dengan V-untuk menetapkan nilai atribut secara dinamik untuk setiap elemen; dan kaedah .map boleh menukar elemen array ke dalam tatasusunan baru.

Cara melompat ke Div Vue Cara melompat ke Div Vue Apr 08, 2025 am 09:18 AM

Terdapat dua cara untuk melompat elemen div di Vue: Gunakan Vue Router dan tambahkan komponen router-link. Tambah pendengar acara @Click dan panggil ini. $ Router.push () kaedah untuk melompat.

See all articles