控件封裝的部分說(shuō)明
可能有人覺(jué)得應(yīng)該前后端分離,我也承認(rèn)這是應(yīng)該的方向,我們也在考慮使用ng2等簡(jiǎn)化前端。但是,我們封裝控件還是因?yàn)槿缦略蚓C合考慮的:
我們這是個(gè)框架,上面支撐了許多個(gè)應(yīng)用,包含幾百個(gè)頁(yè)面,每個(gè)頁(yè)面都去寫一堆的js\css\html標(biāo)簽可能對(duì)開(kāi)發(fā)人員來(lái)說(shuō)非常麻煩,且每個(gè)人寫的都可能不一樣。為了更簡(jiǎn)化中、低級(jí)開(kāi)發(fā)人員的工作才提供的這種封裝,個(gè)人認(rèn)為這樣才是簡(jiǎn)化和標(biāo)準(zhǔn)化開(kāi)發(fā)的做法
像我們這里有datatable、文件上傳等的控件,datatable就包含分頁(yè)、超鏈、排序、格式化等等,js非常復(fù)雜,附件上傳更復(fù)雜,這個(gè)不做封裝實(shí)在不方便使用
我們后面有自定義表單、自定義數(shù)據(jù)查詢等功能,控件都是通過(guò)拖拽生成的,必須使用封裝方式
其實(shí)呢,mvc也提供了html.textfor等寫法,其中有的也封裝了js的,甚至校驗(yàn)也是封裝的js。本節(jié)內(nèi)容進(jìn)階二,是直接使用cshtml,部分做到了前后端分離。當(dāng)然了,如果有更好的建議和做法,歡迎提出來(lái)。
看本篇之前,建議先看一下上一篇9.2.1 .net framework下的MVC 控件的封裝(上)。