


Artikel yang menerangkan secara terperinci cara menggunakan JSX dalam vue3
Bagaimana untuk menggunakan JSX dalam
vue? Artikel berikut akan memperkenalkan kepada anda cara menggunakan JSX dalam vue3. Saya harap ia akan membantu anda!
Dalam kebanyakan kes, Vue mengesyorkan menggunakan templat <template>
sintaks untuk mencipta aplikasi.
Dalam pembangunan projek Vue 3, templat ialah kaedah penulisan lalai Vue 3. Walaupun templat kelihatan seperti HTML, Vue sebenarnya menghuraikan templat ke dalam fungsi pemaparan Kemudian, apabila komponen sedang berjalan, fungsi pemaparan mengembalikan DOM maya. [Belajar perkongsian video: tutorial video vue, video bahagian hadapan web]
Walau bagaimanapun, dalam beberapa senario penggunaan, kami benar-benar perlu menggunakan keupayaan pengaturcaraan lengkap JavaScript. Di sinilah fungsi pemaparan berguna.
fungsi h
Vue menyediakan fungsi h()
untuk mencipta dom maya vnodes. Contoh berikut: Bagaimana untuk menggunakan
import { h } from 'vue' const vnode = h( 'div', // type { id: 'foo', class: 'bar' }, // props [ /* children */ ] )
dalam komponen?
Sebelum ini apabila API gubahan digunakan dengan templat, nilai pulangan cangkuk setup()
telah digunakan untuk mendedahkan data kepada templat. Tetapi apabila menggunakan h()
, cangkuk setup()
mengembalikan fungsi pemaparan :
import { ref, h } from 'vue' export default { props: { /* ... */ }, setup(props) { const count = ref(1) // 返回渲染函数 return () => h('div', props.msg + count.value) } }
fungsi h tulisan tangan, yang boleh mengendalikan adegan yang lebih dinamik. Tetapi jika ia adalah adegan yang kompleks, fungsi h sangat menyusahkan untuk ditulis, dan anda perlu menukar semua atribut kepada objek sendiri. Dan apabila komponen bersarang, objek akan menjadi sangat kompleks. Walau bagaimanapun, kerana fungsi h juga mengembalikan DOM maya, adakah terdapat cara yang lebih mudah untuk menulis fungsi h? Jawapannya ya, caranya ialah JSX.
JSX
JSX ialah sambungan JavaScript seperti XML Dengannya, kami boleh mencipta vnod dengan cara yang mudah:
const vnode = <div id="app">hello</div>
Sintaks untuk menulis HTML dalam JavaScript ini dipanggil JSX, yang merupakan lanjutan sintaks JavaScript. Apabila kod di atas dijalankan terus dalam persekitaran JavaScript, ralat akan dilaporkan. Intipati JSX ialah gula sintaksis untuk kod berikut.
const vnode = createVnode('div',{id:"app"}, 'hello')
Malah, createVnode juga dipanggil di dalam fungsi h untuk mengembalikan DOM maya.
Jadi, bagaimana untuk menggunakan JSX dalam projek Vue?
Secara lalai, projek vue3 vite tidak menyokong jsx Jika anda mahu menyokong jsx, anda perlu memasang pemalam @vitejs/plugin-vue-jsx
Pasang
npm i @vitejs/plugin-vue-jsx -D
import vueJsx from "@vitejs/plugin-vue-jsx"; // 配置vue使用jsx export default defineConfig({ plugins: [ vue(), vueJsx() ], });
// render.vue <script> import { ref } from "vue"; export default { setup() { const count = ref(100); return () => <div>count is: {count.value}</div>; }, }; </script>
Nota: lang dalam skrip mesti ditukar kepada jsx.Atau fail jsx:
// render.jsx import { defineComponent } from 'vue' export default defineComponent({ setup() { return () => <div>jsx文件</div> } })
Templat vs JSX
Bagaimanakah kita harus memilih JSX dan templat? Kelebihan templat: Sintaks templat adalah tetap, hanya v-if, v-for dan sebagainya. Kami menulis mengikut sintaks format tetap ini, supaya Vue3 boleh mengoptimumkan teg statik dengan mudah pada tahap kompilasi dan mengurangkan proses Diff. Contohnya, promosi statik, teg jenis, pengimbangan struktur pokok, dll. boleh meningkatkan prestasi masa jalan DOM maya. Ini juga merupakan sebab penting mengapa DOM maya Vue 3 lebih pantas daripada Vue 2.Rujukan:Kelebihan JSX: templat tidak boleh menyokong keperluan yang lebih dinamik seperti JSX disebabkan oleh pengehadan sintaks. Ini juga merupakan kelebihan JSX berbanding templat. JSX mempunyai kelebihan lain berbanding templat kerana ia boleh mengembalikan berbilang komponen dalam satu fail. Jadi bagaimana untuk memilih? Apabila merealisasikan keperluan perniagaan, beri keutamaan untuk menggunakan templat dan gunakan sepenuhnya pengoptimuman prestasi Vue sendiri. Komponen dengan keperluan dinamik yang lebih tinggi boleh dilaksanakan menggunakan JSX. (Sebagai contoh, kemudian, saya akan menggunakan JSX untuk melaksanakan penjana borang dinamik)
Ringkasan
Pertama sekali, kami biasanya menggunakan templat templat untuk mencipta aplikasi dalam projek , templat templat Akan disusun ke dalam fungsi pemaparan pemaparan semasa fasa binaan. Fungsi rendering ialah fungsi yang digunakan untuk mengembalikan DOM maya. Kemudian kita sebenarnya boleh melangkau langkah ini dan terus menggunakan fungsi h untuk menjana DOM maya. Pelaksanaan dalaman fungsi h sebenarnya ialah fungsi createVNode untuk menjana DOM maya Namun, memandangkan fungsi h sukar untuk ditulis, kami menggunakan JSX untuk menulisnya dengan lebih mudah dan cepat. Fungsi createVNode sebenarnya digunakan secara dalaman dalam JSX. JSX tidak boleh dilaksanakan secara langsung dalam JavaScript Dalam projek vite, kami perlu memasang pemalam@vitejs/plugin-vue-jsx
Akhir sekali, kelebihan dan kekurangan template dan JSX dibandingkan. Kelebihan templat ialah sintaksnya tetap dan mudah ditulis Pada peringkat kompilasi, Vue3 telah membuat banyak pengoptimuman untuk penyusunan templat. Kelebihan JSX ialah fleksibiliti Dalam sesetengah kes apabila keperluan dinamik tinggi, JSX telah menjadi konfigurasi standard.
Seperti kata pepatah, terdapat pengkhususan dalam industri.
(Tamat)
(Perkongsian video pembelajaran: Pembangunan bahagian hadapan web, Video pengaturcaraan asas)
Atas ialah kandungan terperinci Artikel yang menerangkan secara terperinci cara menggunakan JSX dalam vue3. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Anda boleh menambah fungsi ke butang VUE dengan mengikat butang dalam templat HTML ke kaedah. Tentukan kaedah dan tulis logik fungsi dalam contoh Vue.

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.

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.

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.

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.

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.

Anda boleh menanyakan versi VUE dengan menggunakan Vue Devtools untuk melihat tab VUE dalam konsol penyemak imbas. Gunakan NPM untuk menjalankan arahan "NPM LIST -G VUE". Cari item VUE dalam objek "Dependencies" fail Package.json. Untuk projek Vue CLI, jalankan perintah "Vue -version". Semak maklumat versi di & lt; skrip & gt; Tag dalam fail HTML yang merujuk kepada fail VUE.

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.
