Berapa banyak komponen utama yang ada pada vue?
Vue mempunyai 4 komponen utama: 1. Komponen global Gunakan kaedah "app.component(...)" untuk mendaftarkan komponen global boleh digunakan dalam mana-mana templat komponen aplikasi. 2. Komponen tempatan ialah komponen yang didaftarkan dalam pilihan "komponen" bagi komponen (induk). 3. Komponen dinamik merujuk kepada komponen dengan nama yang berbeza yang diberikan berdasarkan nilai pengikatan yang berbeza kepada atribut tersebut. 4. Komponen tak segerak tidak dipaparkan serta-merta apabila halaman dimuatkan, sebaliknya, mereka menunggu sehingga beberapa logik perniagaan selesai sebelum melaksanakan logik dalam komponen dan memaparkannya ke halaman.
Persekitaran pengendalian tutorial ini: sistem windows7, versi vue3, komputer DELL G3.
Komponen Vue pada asasnya adalah contoh dengan pilihan yang telah ditetapkan Kami menggunakan komponen yang kecil, bebas dan biasanya boleh digunakan semula, dipasang lapisan demi lapisan, dan akhirnya membentuk halaman yang lengkap.
Komponen mesti didaftarkan terlebih dahulu supaya aplikasi Vue boleh mengenalinya Terdapat dua jenis pendaftaran komponen:
<ul>Komponen global
(dalam komponen akar) menggunakan kaedah app.component('component-Name', {})
untuk mendaftar komponen global Komponen yang didaftarkan secara global boleh digunakan dalam templat mana-mana komponen dalam aplikasi . (Belajar perkongsian video: Tutorial pengenalan Vuejs, Video pengaturcaraan asas)
Parameter pertama ialah nama komponen, dan disyorkan untuk mengikuti W3C spesifikasi Nama komponen tersuai dalam (untuk mengelakkan konflik dengan elemen HTML semasa dan akan datang): huruf semuanya huruf kecil dan mesti mengandungi tanda sempang . Parameter kedua ialah pilihan konfigurasi komponen.
const app = Vue.createApp(); app.component('my-component', { template: `<h1>Hello World!</h1>` }); const vm = app.mount('#app')
⚠️ Walaupun komponen global boleh digunakan dengan mudah dalam pelbagai komponen (termasuk dalaman mereka sendiri), ini boleh menyebabkan peningkatan dalam saiz projek semasa membinanya dan peningkatan yang tidak perlu dalam jumlah JavaScript dimuat turun oleh pengguna.
Perlu mendaftar komponen global app.mount('#app')
sebelum aplikasi dipasang pada DOM
. components
ini ditakrifkan oleh objek JavaScript biasa , yang menerima parameter yang sama seperti komponen global, tetapi ia hanya boleh digunakan dalam komponen induk , dipanggil komponen tempatan.
Untuk setiap sifat dalam objek, components
nama sifatnya ialah nama elemen tersuai dan nilai sifatnya ialah objek pilihan komponen ini.
const ComponentA = { /* ... */ } const ComponentB = { /* ... */ } const ComponentC = { /* ... */ }
// 然后在父组件的 `components` 选项中定义你想要使用的组件 const app = Vue.createApp({ components: { 'component-a': ComponentA, 'component-b': ComponentB } })
digunakan untuk memaparkan komponen berbeza secara dinamik Dengan mengawal nilai parameter yang terikat pada atribut <component :is="componentName />"
is
, komponen yang sepadan dengan nama yang sama boleh menjadi. dipaparkan.
boleh menjadi: is
dengan tag <keep-alive></keep-alive>
. Atribut
juga boleh digunakan untuk menyelesaikan sekatan peraturan sarang elemen HTML, dan nilainya ialah nama komponen, supaya kandungan itu benar-benar dipaparkan oleh orang asli tag ialah komponen . is
, <ul>
, <ol>
dan <table>
, terdapat sekatan ketat terhadap elemen anak langsung yang dibenarkan untuk diletakkan di dalamnya, dan membenamkan elemen lain akan dianggap tidak sah . Tetapi jika kita perlu menggunakan komponen sebagai elemen anak langsung dalam elemen ini, kita boleh menggunakan atribut <select>
pada elemen anak "undang-undang" untuk menentukan kandungan sebenar yang akan diberikan Dalam kes ini, atribut is
digunakan pada elemen HTML asli , seperti is
yang nilainya <tr>
perlu diawali dengan untuk menunjukkan bahawa apa yang dihuraikan sebenarnya adalah komponen Vue vue:
<table> <tr is="vue:blog-post-row"></tr> </table>
<ul>
template: '...'
.vue
<script type="text/x-template">
异步组件
现在的大型网页往往需要异步获取不同的数据,Vue 有一个 defineAsyncComponent
方法定义异步组件,以优化应用的加载和用户体验。
异步组件在加载页面时并不立即渲染,而是要等带一些业务逻辑完成后,才会执行组件内的逻辑和渲染到页面上。
// 全局组件 app.component('async-example', Vue.defineAsyncComponent(() => { return new Promise((resolve, reject) => { resolve({ template: '<div>I am async!</div>' }) }) })) // 局部组件 import { createApp, defineAsyncComponent } from 'vue' createApp({ // ... components: { AsyncComponent: defineAsyncComponent(() => { return new Promise((resolve, reject) => { resolve({ template: '<div>I am async!</div>' }) }) }) } })
异步组件的注册和一般的同步组件类似,如果是注册全局组件,也是使用 app.component()
进行注册,不过第二个参数使用 Vue.defineAsyncComponent()
方法告诉 Vue 应用该组件是异步组件。
defineAsyncComponent()
方法的参数是一个匿名函数,而且函数是返回一个 Promise。在 Promise 内应该 resovlve({})
一个对象,其中包含了构建组件相关配置参数。只有当 Promise resolve
或 reject
才执行异步组件的处理。
Atas ialah kandungan terperinci Berapa banyak komponen utama yang ada pada vue?. 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

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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











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.

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

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.

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.

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.

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.

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.

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