Rumah > Artikel > hujung hadapan web > ralat js direktori sekunder vue3
Vue3 ialah salah satu rangka kerja yang lebih popular untuk pembangunan bahagian hadapan Semasa proses pembangunan sebenar, anda kadangkala menghadapi beberapa masalah dan ralat. Artikel ini akan membincangkan tentang ralat js direktori sekunder yang dihadapi semasa menggunakan Vue3.
Penerangan Masalah
Apabila menggunakan Vue3 untuk membangunkan projek, struktur projek menggunakan struktur direktori sekunder. Dalam fail js halaman tertentu, kaedah dan sifat Vue3 yang berkaitan digunakan, tetapi mesej ralat muncul semasa proses penyusunan Mesej ralat khusus adalah seperti berikut:
Uncaught TypeError: Cannot read property '. $refs' of undefined
Selepas penyiasatan, didapati ralat ini disebabkan oleh fail js dalam direktori sekunder yang tidak dapat memperoleh atribut $refs yang ditakrifkan dalam komponen induk dengan betul.
Penyelesaian
Untuk masalah ralat ini, terdapat dua penyelesaian utama:
Kaedah 1: Gunakan provide dan inject untuk menghantar data
In In the parent komponen, gunakan kaedah menyediakan untuk menghantar data kepada komponen anak, dan dalam komponen anak, gunakan kaedah suntikan untuk mendapatkan data dalam komponen induk. Kod khusus adalah seperti berikut:
// Sediakan
provide('ref', this.$refs) ditakrifkan dalam komponen induk; ditakrifkan dalam komponen anak : ['ref'],
Dalam komponen anak, anda boleh mendapatkan atribut $refs dalam komponen induk melalui ini.$inject.ref.
const sharedData = Vue.observable({
ref: null,});
// Lulus data melalui data kongsi
provide('sharedData', sharedData);
// Dapatkan data kongsi dalam komponen anak
const sharedData = inject('sharedData');
Kedua-dua kaedah boleh menyelesaikan masalah tidak dapat memperoleh atribut $refs dalam komponen induk dalam direktori sekunder. Perbezaannya ialah kaedah pertama adalah untuk menghantar data melalui kaedah menyediakan dan menyuntik, manakala kaedah kedua adalah untuk mencapai perkongsian data melalui Vue.observable.
Atas ialah kandungan terperinci ralat js direktori sekunder vue3. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!