前面一段時(shí)間在慕課網(wǎng)看組件化開發(fā)的時(shí)候有點(diǎn)吃力,看了《javas高級(jí)程序設(shè)計(jì)》之后感覺輕松了許多,將oop思想編程、構(gòu)造函數(shù)、原型、閉包等理論知識(shí)實(shí)踐起來(lái)
自己平時(shí)在工作當(dāng)中為了提高效率都是直接用別人的插件,自己做的工作都是配置好參數(shù),引入一個(gè)插件的js文件和css文件直接over了,這些提升不了編程水平,自己需要多挑戰(zhàn)下
思考:關(guān)于tab選項(xiàng)卡。如果我能在給定的配置參數(shù)中自定義鼠標(biāo)出發(fā)類型、默認(rèn)顯示的tab選項(xiàng)、自動(dòng)播放、切換效果等,以后別人也能夠只要在配置參數(shù)中做些簡(jiǎn)單的設(shè)置就好了,這是一件比較有成就感的事情代碼詳情地址
知識(shí)點(diǎn):1)匿名函數(shù)自我執(zhí)行? 2)參數(shù)配置以及擴(kuò)展 3)parseJSON(json轉(zhuǎn)化為js字符串) 4)原型和構(gòu)造函數(shù)5)jquery注冊(cè)事件等
解說(shuō):組件化開發(fā)需要具備三要素:對(duì)象、配置參數(shù)、交互行為(事件)等。在tab選項(xiàng)卡中,它的對(duì)象是tabItems、contentItems,我們來(lái)看下html代碼
再是配置參數(shù)(分為人工配置參數(shù)和默認(rèn)配置參數(shù)),如果人工沒有配置參數(shù),我們就用默認(rèn)配置參數(shù)
1)、參數(shù)配置和擴(kuò)展
匿名函數(shù)立即執(zhí)行,定義構(gòu)造函數(shù),.prototype寫上,window.Tab=tab。一般來(lái)說(shuō),方法寫在原型當(dāng)中,原型中獲取配置參數(shù)>構(gòu)造函數(shù)當(dāng)中擴(kuò)展參數(shù)
2)事件綁定。首先是鼠標(biāo)觸發(fā)事件,如果配置參數(shù)的觸發(fā)事件是click或者是mouseover,做一個(gè)條件判斷。
切換的時(shí)候是有效果的(即要獲取到effect的配置參數(shù))
剩下兩個(gè)配置參數(shù)auto和invoke(默認(rèn)顯示第幾項(xiàng))
3)初始化函數(shù)和注冊(cè)成jq
這樣下來(lái):思路就清晰很多了。之前都不懂組件化開發(fā)的流程,經(jīng)過(guò)一番練習(xí),大致思路清晰了,雖然還不能憑空敲出代碼,但是感覺自己進(jìn)步了一些,以后多練習(xí)組件化開發(fā),為三大框架的項(xiàng)目實(shí)戰(zhàn)打下基礎(chǔ)