vue 組件簡介
什么是組件?
web的組件其實(shí)就是頁面組成的一部分,好比是電腦中的每一個(gè)元件(如硬盤、鍵盤、鼠標(biāo)),它是一個(gè)具有獨(dú)立的邏輯和功能或界面,同時(shí)又能根據(jù)規(guī)定的接口規(guī)則進(jìn)行相互融合,變成一個(gè)完整的應(yīng)用。
web頁面就是由一個(gè)個(gè)類似這樣的部分組成的,比如導(dǎo)航、列表、彈窗、下拉菜單等。頁面只不過是這些組件的容器,組件自由組合形成功能完整的界面,當(dāng)不需要某個(gè)組件,或者想要替換某個(gè)組件時(shí),可以隨時(shí)進(jìn)行替換和刪除,而不影響整個(gè)應(yīng)用的運(yùn)行。
前端組件化的核心思路就是將一個(gè)巨大復(fù)雜的東西才分成粒度合理的小東西。
使用組件的好處:
- 提高開發(fā)效率
- 方便重復(fù)使用
- 簡化調(diào)試步驟
- 提升整個(gè)項(xiàng)目的課維護(hù)性
- 便于協(xié)同開發(fā)
組件(Component)是 Vue.js 最強(qiáng)大的功能之一。
組件可以擴(kuò)展 HTML 元素,封裝可重用的代碼。
在較高層面上,組件是自定義元素, Vue.js 的編譯器為它添加特殊功能。
在有些情況下,組件也可以是原生 HTML 元素的形式,以 is 特性擴(kuò)展。
組件系統(tǒng)讓我們可以用獨(dú)立可復(fù)用的小組件來構(gòu)建大型應(yīng)用,幾乎任意類型的應(yīng)用的界面都可以抽象為一個(gè)組件樹:
vue.js的組件可以理解為預(yù)先定義好行為的ViewModel類。一個(gè)組件可以預(yù)先定義很多選項(xiàng)。但是最核心的是以下幾個(gè):
- 模板(template)——模板聲明了數(shù)據(jù)和最終展現(xiàn)給用戶的DOM之間的映射關(guān)系。
- 初始數(shù)據(jù)(data)——一個(gè)組件的初始數(shù)據(jù)狀態(tài)。對(duì)于可服用的組件來說,通常是私有的狀態(tài)。
- 接受的外部參數(shù)(props)——組件之間通過參數(shù)來進(jìn)行數(shù)據(jù)的傳遞和共享。參數(shù)默認(rèn)是單向綁定(由上至下),但也可以顯式聲明為雙向綁定。
- 方法(methods)——對(duì)數(shù)據(jù)的改動(dòng)操作一般都在組件的方法內(nèi)進(jìn)行??梢酝ㄟ^v-on指令將用戶輸入事件和組件方法進(jìn)行綁定。
- 生命周期鉤子函數(shù)(lifecycle hooks)——一個(gè)組件會(huì)觸發(fā)多個(gè)生命周期鉤子函數(shù),比如created、attached、destroyed等。在這些鉤子函數(shù)中,我們可以封裝一些自定義的邏輯。和傳統(tǒng)的MVC相比,這可以理解為Controller的邏輯被分散到了這些鉤子函數(shù)中。
以上就是深入了解vue 組件的詳細(xì)內(nèi)容,更多關(guān)于vue 組件的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Vue.js 圖標(biāo)選擇組件實(shí)踐詳解
- 在 Vue 中編寫 SVG 圖標(biāo)組件的方法
- vue+vuex+axios從后臺(tái)獲取數(shù)據(jù)存入vuex,組件之間共享數(shù)據(jù)操作
- Vue 解決通過this.$refs來獲取DOM或者組件報(bào)錯(cuò)問題
- vue 組件之間事件觸發(fā)($emit)與event Bus($on)的用法說明
- vue內(nèi)置組件component--通過is屬性動(dòng)態(tài)渲染組件操作
- Vue組件跨層級(jí)獲取組件操作
- vue之父子組件間通信實(shí)例講解(props、$ref、$emit)
- vue如何引用其他組件(css和js)
- vue mounted組件的使用
- vue組件 $children,$refs,$parent的使用詳解
- Vue-Router實(shí)現(xiàn)組件間跳轉(zhuǎn)的三種方法
- 如何在Vue.JS中使用圖標(biāo)組件
相關(guān)文章
Vue3使用Proxy實(shí)現(xiàn)數(shù)據(jù)監(jiān)聽的原因分析
在本篇文章里小編給大家整理的是一篇關(guān)于Vue3使用Proxy實(shí)現(xiàn)數(shù)據(jù)監(jiān)聽的原因分析內(nèi)容,有需要的朋友們可以跟著學(xué)習(xí)參考下。2021-11-11解決vue 使用axios.all()方法發(fā)起多個(gè)請(qǐng)求控制臺(tái)報(bào)錯(cuò)的問題
這篇文章主要介紹了解決vue 使用axios.all()方法發(fā)起多個(gè)請(qǐng)求控制臺(tái)報(bào)錯(cuò)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11詳解unplugin?vue?components不能識(shí)別組件自動(dòng)導(dǎo)入類型pnpm
這篇文章主要為大家介紹了unplugin?vue?components不能識(shí)別組件自動(dòng)導(dǎo)入類型pnpm詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01Vue實(shí)現(xiàn)類似Spring官網(wǎng)圖片滑動(dòng)效果方法
這篇文章主要介紹了Vue實(shí)現(xiàn)類似Spring官網(wǎng)圖片滑動(dòng)效果方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-03-03Element樹形控件整合帶圖標(biāo)的下拉菜單(tree+dropdown+input)
Element UI 官網(wǎng)提供的樹形控件包含基礎(chǔ)的、可選擇的、自定義節(jié)點(diǎn)內(nèi)容的、帶節(jié)點(diǎn)過濾的以及可拖拽節(jié)點(diǎn)的樹形結(jié)構(gòu),本文實(shí)現(xiàn)了樹形控件整合帶圖標(biāo)的下拉菜單,感興趣的可以了解一下2021-07-07vue項(xiàng)目配置element-ui容易遇到的坑及解決
這篇文章主要介紹了vue項(xiàng)目配置element-ui容易遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07vue 組件之間事件觸發(fā)($emit)與event Bus($on)的用法說明
這篇文章主要介紹了vue 組件之間事件觸發(fā)($emit)與event Bus($on)的用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-07-07vue實(shí)現(xiàn)簡單實(shí)時(shí)匯率計(jì)算功能
這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)簡單實(shí)時(shí)匯率計(jì)算功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01Vue-Element-Admin集成自己的接口實(shí)現(xiàn)登錄跳轉(zhuǎn)
關(guān)于這個(gè)Vue-element-admin中的流程可能對(duì)于新的同學(xué)不是很友好,所以本文將結(jié)合實(shí)例代碼,介紹Vue-Element-Admin集成自己的接口實(shí)現(xiàn)登錄跳轉(zhuǎn),感興趣的小伙伴們可以參考一下2021-06-06