


Ralat Vue: Atribut yang dikira tidak boleh digunakan dengan betul untuk pengiraan dinamik Bagaimana untuk menyelesaikannya?
Ralat Vue: Atribut yang dikira tidak boleh digunakan dengan betul untuk pengiraan dinamik, bagaimana untuk menyelesaikannya?
Dalam proses pembangunan menggunakan Vue, atribut yang dikira sering digunakan untuk melaksanakan beberapa fungsi pengiraan dinamik. Sifat yang dikira adalah bahagian yang sangat penting dalam Vue Ia boleh mengira sifat-sifat contoh Vue dan mengembalikan nilai baharu. Walau bagaimanapun, kadangkala kita menghadapi beberapa masalah dan atribut yang dikira tidak dapat digunakan dengan betul Pada masa ini, kita perlu mengetahui masalah dan menyelesaikannya.
Mari kita lihat contoh mudah di bawah Katakan kita mempunyai senarai pengguna dan kita perlu mengira julat umur mereka berdasarkan umur pengguna:
<template> <div> <ul> <li v-for="user in userList" :key="user.id"> {{ user.name }} - {{ user.age }} - {{ ageRange(user.age) }} </li> </ul> </div> </template> <script> export default { data() { return { userList: [ { id: 1, name: '张三', age: 18 }, { id: 2, name: '李四', age: 25 }, { id: 3, name: '王五', age: 35 }, ], }; }, computed: { ageRange(age) { if (age < 20) { return '青少年'; } else if (age >= 20 && age <= 30) { return '青年'; } else { return '中年'; } }, }, }; </script>
Dalam kod di atas, kami menentukan kaedah julat umur dalam atribut yang dikira kepada. Kira julat umur. Walau bagaimanapun, apabila kami cuba menjalankan kod ini, ralat akan muncul:
[Vue warn]: Computed property "ageRange" was assigned to but it has no setter.
Ralat ini bermakna kaedah yang kami takrifkan dalam sifat yang dikira tidak mempunyai penetap. Dalam Vue, kita boleh menyelesaikan masalah ini dengan mentakrifkan penetap. Kami boleh mengubah suai kod dan menukar atribut yang dikira kepada kaedah penggunaan:
<template> <div> <ul> <li v-for="user in userList" :key="user.id"> {{ user.name }} - {{ user.age }} - {{ getAgeRange(user.age) }} </li> </ul> </div> </template> <script> export default { data() { return { userList: [ { id: 1, name: '张三', age: 18 }, { id: 2, name: '李四', age: 25 }, { id: 3, name: '王五', age: 35 }, ], }; }, methods: { getAgeRange(age) { if (age < 20) { return '青少年'; } else if (age >= 20 && age <= 30) { return '青年'; } else { return '中年'; } }, }, }; </script>
Dalam kod di atas, kami menukar pengiraan kepada kaedah untuk mencapai fungsi pengiraan kumpulan umur secara dinamik dengan mentakrifkan kaedah. Ini mengelakkan ralat dan mengekalkan fungsi yang sama.
Selain menggunakan kaedah, kami juga boleh menggunakan atribut jam tangan untuk mengira sifat secara dinamik. Berikut ialah contoh penggunaan atribut jam tangan:
<template> <div> <ul> <li v-for="user in userList" :key="user.id"> {{ user.name }} - {{ user.age }} - {{ ageRange }} </li> </ul> </div> </template> <script> export default { data() { return { userList: [ { id: 1, name: '张三', age: 18 }, { id: 2, name: '李四', age: 25 }, { id: 3, name: '王五', age: 35 }, ], ageRange: '', }; }, watch: { userList: { handler(newVal) { this.ageRange = this.getAgeRange(newVal.age); }, deep: true, }, }, methods: { getAgeRange(age) { if (age < 20) { return '青少年'; } else if (age >= 20 && age <= 30) { return '青年'; } else { return '中年'; } }, }, }; </script>
Dalam kod di atas, kami menggunakan atribut jam tangan untuk mendengar perubahan dalam atribut userList, dan apabila ia berubah, kira kumpulan umur dan kemas kini atribut ageRange melalui getAgeRange kaedah.
Untuk meringkaskan, apabila menggunakan atribut yang dikira untuk pengiraan dinamik, jika anda menghadapi masalah yang tidak boleh digunakan dengan betul, anda boleh cuba menggunakan kaedah atau menonton atribut untuk mencapai fungsi yang sama. Ini boleh menyelesaikan ralat dan mengekalkan fungsi kod tidak berubah. Saya harap artikel ini akan membantu dalam menyelesaikan masalah ralat Vue.
Atas ialah kandungan terperinci Ralat Vue: Atribut yang dikira tidak boleh digunakan dengan betul untuk pengiraan dinamik Bagaimana untuk menyelesaikannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Vue.js adalah kerangka JavaScript yang progresif yang dikeluarkan oleh You Yuxi pada tahun 2014 untuk membina antara muka pengguna. Kelebihan terasnya termasuk: 1. Pengikatan data responsif, Paparan Kemas Kini Automatik Perubahan Data; 2. Pembangunan komponen, UI boleh dibahagikan kepada komponen bebas dan boleh diguna semula.

Netflix menggunakan React sebagai kerangka depannya. 1) Model pembangunan komponen React dan ekosistem yang kuat adalah sebab utama mengapa Netflix memilihnya. 2) Melalui komponen, Netflix memisahkan antara muka kompleks ke dalam ketulan yang boleh diurus seperti pemain video, senarai cadangan dan komen pengguna. 3) Kitaran Hayat DOM dan Komponen Maya React mengoptimumkan kecekapan rendering dan pengurusan interaksi pengguna.

Pilihan Netflix dalam teknologi front-end terutamanya memberi tumpuan kepada tiga aspek: pengoptimuman prestasi, skalabilitas dan pengalaman pengguna. 1. Pengoptimuman Prestasi: Netflix memilih React sebagai kerangka utama dan alat yang dibangunkan seperti SpeedCurve dan Boomerang untuk memantau dan mengoptimumkan pengalaman pengguna. 2. Skalabiliti: Mereka mengamalkan seni bina front-end mikro, memisahkan aplikasi ke dalam modul bebas, meningkatkan kecekapan pembangunan dan skalabilitas sistem. 3. Pengalaman Pengguna: Netflix menggunakan perpustakaan komponen bahan-UI untuk terus mengoptimumkan antara muka melalui ujian A/B dan maklum balas pengguna untuk memastikan konsistensi dan estetika.

NetflixusesAcustomFrameworkcalled "gibbon" Builtonreact, notreactorsvuedirectly.1) TeamExperience: chectionBasedOnfamiliarity.2) ProjectOplePlexity: VueforsImplerProjects, ReactForComplexones.3)

Netflix terutamanya menganggap prestasi, skalabiliti, kecekapan pembangunan, ekosistem, hutang teknikal dan kos penyelenggaraan dalam pemilihan rangka kerja. 1. Prestasi dan Skalabiliti: Java dan Springboot dipilih untuk memproses data besar -besaran dan permintaan serentak yang tinggi. 2. Kecekapan Pembangunan dan Ekosistem: Gunakan React untuk meningkatkan kecekapan pembangunan front-end dan menggunakan ekosistemnya yang kaya. 3. Hutang Teknikal dan Penyelenggaraan Kos: Pilih Node.js untuk membina mikroservis untuk mengurangkan kos penyelenggaraan dan hutang teknikal.

Netflix terutamanya menggunakan React sebagai rangka kerja front-end, ditambah dengan VUE untuk fungsi tertentu. 1) Komponen React dan DOM maya meningkatkan prestasi dan kecekapan pembangunan aplikasi Netflix. 2) VUE digunakan dalam alat dalaman dan projek kecil Netflix, dan fleksibiliti dan kemudahan penggunaannya adalah kunci.

Vue.js adalah rangka kerja JavaScript yang progresif yang sesuai untuk membina antara muka pengguna yang kompleks. 1) Konsep terasnya termasuk data responsif, komponen dan DOM maya. 2) Dalam aplikasi praktikal, ia boleh ditunjukkan dengan membina aplikasi todo dan mengintegrasikan vuerouter. 3) Apabila debugging, disyorkan untuk menggunakan Vuedevtools dan Console.log. 4) Pengoptimuman prestasi boleh dicapai melalui V-IF/V-Show, senarai pengoptimuman rendering, pemuatan asynchronous komponen, dll.

Vue.js sesuai untuk projek kecil dan sederhana, sementara React lebih sesuai untuk aplikasi besar dan kompleks. 1. Sistem responsif vue.js secara automatik mengemas kini DOM melalui pengesanan ketergantungan, menjadikannya mudah untuk menguruskan perubahan data. 2. Leact mengamalkan aliran data sehala, dan data mengalir dari komponen induk ke komponen kanak-kanak, menyediakan aliran data yang jelas dan struktur yang mudah dibuang.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa