react與smarty的比較

使用react的感觸

react可以對組件進(jìn)行拆分,所以我感覺react組件對頁面整體依賴性不大,以前用smarty的時候,感覺有的時候?qū)懡M件,總是會因為UE稍微變一點樣式,可能那個組件就不能復(fù)用了,或者有時候重構(gòu)某一個頁面的時候??赡苋绻胹marty的話,很多以前寫的都不能用了,用smarty的時候改動一個東西對頁面的結(jié)構(gòu)可能影響比較大,但是react直接拼裝就可以了,react對解耦比較好,很多組件只要拿過來用就可以了,寫一次就夠了,可以避免重復(fù)造輪子,如果有樣式改變的,直接把子組件拿過來,外面包一層div用新樣式處理就可以了,簡而言之就是模塊化!模塊化!模塊化!

目前準(zhǔn)備看redux, 等redux上手以后,對處理各種狀態(tài)值也比較方便,對于大型的項目,smarty往往要定義大量的全局變量來處理各種狀態(tài)的變化,顯得代碼很亂也有很多if/else來處理,而用react只要改變一個狀態(tài)值,可以對應(yīng)不同的邏輯,用起來也方便,往往組件可以越拆越細(xì),所以狀態(tài)值也不會很多,顯得代碼比較整潔,M站的smarty代碼中,尤其是模板,稍微大一點的有一兩千行,看起來簡直想吐,尤其是后端往往只要查一個字段,我就要在一兩千行html代碼中找那個字段,簡直苦不堪言,所以我覺得回到根本react最好的一點就是模塊化,往往只要開發(fā)一次,就可以拼拼湊湊了,主要是再也不用大段大段寫html代碼,各種對字段了,有時候一個字段掛了可能整個模板都會掛掉,所以感覺用ajax+react模式可以避免這種情況,也再也不用在幾千行html代碼中找字段了。。。

對于所有的數(shù)據(jù)都可以用ajax來獲取,免去了讓后端去渲染前端模板,可以省一些聯(lián)調(diào)時間,最重要的是,可以在前端來渲染模板,在UI渲染過程中,React通過在虛擬DOM中的微操作來實對現(xiàn)實際DOM的局部更新,并不是直接對DOM進(jìn)行操作,可以提高性能,節(jié)省smarty時,頁面渲染所消耗的時間。

目前總結(jié)起來就是

模塊化 + 不用專門寫大段html放在一起 + 不用注意smarty語法 + 虛擬dom各種用狀態(tài)雙向綁定 讓我用得比較爽

但是還是很初級,因為剛剛上手,所以以后用了有什么坑再來總結(jié)一下。

PS: 如果不用redux的話,感覺各種值通過屬性來傳遞有點繁瑣。。。。。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,008評論 25 709
  • 一、CMS管理系統(tǒng)功能 CMS是ContentManagementSystem的縮寫,意為"內(nèi)容管理系統(tǒng)"。 CM...
    默默先生Alec閱讀 5,606評論 0 7
  • 一、現(xiàn)代前端開發(fā) 1.1 ES6 —— 新一代的JavaScript標(biāo)準(zhǔn) 1.1.1 語法特性 const、let...
    殺破狼real閱讀 2,056評論 0 3
  • 2017年11月18日,剛剛輸完液的我拖著疲倦的身體,像狗一樣滾回了家。躺在床上,收到了你的短信,內(nèi)容大概就是問...
    麋鹿的鴿子閱讀 119評論 0 0
  • 今天早上,我看見我的植物死了的時候,我非常傷心。我在想“我為什么會把植物養(yǎng)死?”我一遍又一遍的說。 但,植物還是死...
    李佳諾閱讀 841評論 0 3

友情鏈接更多精彩內(nèi)容