Dengan pengemaskinian dan lelaran berterusan teknologi bahagian hadapan, Vue.js, sebagai rangka kerja bahagian hadapan, telah menjadi pilihan pertama banyak pembangun. Ciri-ciri Vue.js seperti pengikatan data dua hala, komponenisasi dan DOM maya membawa banyak kemudahan kepada pembangun. Walau bagaimanapun, semasa pembangunan menggunakan Vue.js, pembangun mungkin menghadapi beberapa masalah, seperti ini tidak dapat memberikan nilai kepada pembolehubah. Artikel ini akan membincangkan isu ini dan memberikan beberapa idea dan penyelesaian untuk semua orang untuk menyelesaikan masalah tersebut.
Dalam Vue.js, kami sering menghadapi masalah menunjuk ini. Perkara ini tidak selalu menunjuk kepada contoh Vue itu sendiri. Arahnya selalunya bergantung pada bagaimana fungsi dipanggil. Ringkasnya, ini menunjuk kepada objek di mana ia dipanggil. Walau bagaimanapun, dalam Vue.js, kita perlu memastikan bahawa ini menunjuk kepada tika Vue itu sendiri untuk memanipulasi data dan komponen dengan betul.
2.1 Gunakan fungsi anak panah
Dalam Vue.js, anda boleh menggunakan fungsi anak panah untuk menyelesaikan masalah yang ditunjukkan oleh ini. Fungsi anak panah tidak mengubah penunjuk ini, ia mewarisi nilai ini dalam skop induk. Jadi, jika anda menggunakan ini di dalam fungsi anak panah, ia akan menunjuk kepada contoh Vue itu sendiri, bukan fungsi itu sendiri.
Sebagai contoh, dalam komponen Vue, kita boleh menulis:
data() { return { message: 'Hello, world!' } }, methods: { handleClick: () => { this.message = 'Hello, Vue!' } }
Dalam kod di atas, kaedah handleClick menggunakan fungsi anak panah supaya ini menghala ke tika Vue itu sendiri. Dengan cara ini, kita boleh menetapkan nilai kepada pembolehubah mesej secara normal dalam kaedah handleClick.
2.2 Gunakan kaedah bind
Selain menggunakan fungsi anak panah, anda juga boleh menggunakan kaedah bind untuk menyelesaikan masalah penunjuk ini. Kaedah bind boleh mengikat fungsi kepada objek yang ditentukan, memastikan bahawa ini menunjukkan kepada objek yang diperlukan.
Contohnya, dalam komponen Vue, kita boleh menulis seperti ini:
data() { return { message: 'Hello, world!' } }, methods: { handleClick: function() { this.message = 'Hello, Vue!' }.bind(this) }
Dalam kod di atas, kaedah handleClick menggunakan kaedah bind untuk mengikat ini pada contoh Vue semasa. Dengan cara ini, kita boleh menetapkan nilai kepada pembolehubah mesej secara normal dalam kaedah handleClick.
Masalah penunjuk ini adalah salah satu masalah biasa dalam pembangunan Vue.js. Untuk memastikan bahawa ini menunjukkan contoh Vue itu sendiri, kita boleh menggunakan fungsi anak panah dan kaedah bind untuk menyelesaikan masalah ini. Dalam pembangunan sebenar, kita harus memilih penyelesaian yang paling sesuai berdasarkan senario tertentu. Jika anda menghadapi masalah lain, anda boleh mendapatkan bantuan melalui dokumentasi dan komuniti, atau merujuk kepada contoh rasmi dan perpustakaan pihak ketiga untuk mempercepatkan proses pembangunan anda.
Atas ialah kandungan terperinci vue ini tidak boleh memberikan nilai kepada pembolehubah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!