1.背景介紹
在講解知識之前魂角,先了解一下:庫昵济、插件、框架 和 組件分別是什么野揪?
庫:一系列預(yù)先定義好的數(shù)據(jù)結(jié)構(gòu)和函數(shù)的集合访忿,程序員通過使用這些數(shù)據(jù)結(jié)構(gòu)和函數(shù)實(shí)現(xiàn)功能。例如jQuery.js是一個javascript庫斯稳,封裝了大量開發(fā)中常用的一些函數(shù)海铆。
插件:不依賴業(yè)務(wù)數(shù)據(jù),可配置開關(guān)隨時(shí)上線下線挣惰,一般為第三方服務(wù)(一般依賴于某些庫或者框架)
框架:也是一系列預(yù)先定義好的數(shù)據(jù)結(jié)構(gòu)和函數(shù)卧斟,一般用于作為一個軟件的骨架,但程序真正的功能還需要由開發(fā)者實(shí)現(xiàn)憎茂≌溆铮框架和庫的最大區(qū)別在于“控制反轉(zhuǎn)”,當(dāng)你使用一個庫竖幔,你會調(diào)用庫中的代碼板乙,而當(dāng)你使用一個框架,框架會調(diào)用你的代碼,框架和庫是一個有交叉的概念募逞。如下圖
組件:一般是指軟件系統(tǒng)的一部分蛋铆,承擔(dān)了特定的職責(zé),可以獨(dú)立于整個系統(tǒng)進(jìn)行開發(fā)和測試放接,一個良好設(shè)計(jì)的組件應(yīng)該可以在不同的軟件系統(tǒng)中被使用(可復(fù)用)刺啦。例如V8引擎是Chrome瀏覽器的一部分,負(fù)責(zé)運(yùn)行javascript代碼纠脾,這里V8引擎就可以視為一個組件玛瘸。V8引擎同時(shí)也是Node.js的javascript解釋器,這體現(xiàn)了組件的可復(fù)用性苟蹈。
2.知識剖析
目前流行的前端框架
更多框架信息點(diǎn)我
舉個例子:
技能樹官網(wǎng)
框架:Angular,
庫:jQuery,
插件:懶加載(oclazyload) ?百度富文本插件(UEditor)
組件:Angular中的自定義指令捧韵。
再舉個例子:
Bootstrap點(diǎn)我
Bootstrap是一個HTML,CSS框架汉操,官網(wǎng)提供了大量無數(shù)可復(fù)用的組件,包括字體圖標(biāo)蒙兰、下拉菜單磷瘤、導(dǎo)航、警告框搜变、彈出框等功能采缚。并且集成了很多插件。
3.常見問題
如何使用一個框架或插件挠他?
4.解決方案
先看官方API
再看官方demo
改動demo理解扳抽,各個配置參數(shù)的作用
自己寫個demo
將插件加入項(xiàng)目中使用
5.編碼實(shí)戰(zhàn)
如何使用Vue.js
6.擴(kuò)展思考
如何選擇適合項(xiàng)目的插件?
答案請參考視頻
7.參考文獻(xiàn)
8.更多討論
如何寫出屬于自己的組件庫殖侵?
請參考視頻
今天的分享就到這里啦贸呢,歡迎大家點(diǎn)贊、轉(zhuǎn)發(fā)拢军、留言楞陷、拍磚~
下期預(yù)告:強(qiáng)制緩存和協(xié)商緩存,不見不散~