目前來(lái)看,團(tuán)隊(duì)內(nèi)部前端項(xiàng)目已全面實(shí)施組件化開(kāi)發(fā)。組件化的好處太多,如:按需加載、可復(fù)用、易維護(hù)、可擴(kuò)展、少挖坑、不改組件代碼直接切成服務(wù)器端渲染(如Nuclear組件化可以做到,大家叫同構(gòu))...
怎么做到這么強(qiáng)大的優(yōu)勢(shì),來(lái)回憶下以前見(jiàn)過(guò)的坑,或者現(xiàn)有項(xiàng)目里的坑。
CSS層疊樣式?保佑不要污染別的HTML!
在web前端,一般一個(gè)組件必須要有骨架HTML和裝飾的CSS以及JS邏輯。而CSS要是可以是局部作用域那就再好不過(guò)了!就不用寫(xiě)長(zhǎng)長(zhǎng)的前綴了,浪費(fèi)帶寬不說(shuō),而且費(fèi)勁。
如
.ui-popup-arrow-xx-xxxxx-xxxx-container { }
這回夠長(zhǎng)了吧,不會(huì)污染別的HTML了吧。真的太長(zhǎng)了,沒(méi)有辦法,因?yàn)镃SS不是局部的,怕污染其他的HTML,規(guī)劃好長(zhǎng)長(zhǎng)的namespace、module是以前的最佳實(shí)踐。
怎么優(yōu)雅綁定事件?只能定義在window下?
如果HTML綁定的事件是局部作用域那就再好不過(guò)了!我真的見(jiàn)過(guò)模版代碼里出現(xiàn)下面的代碼:
<div onclick="xxx()"></div>
然后在js里找到了下面的代碼:
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26