React實戰-1個非常棒的React與Material風格相結合的UI控件庫(Material-UI)
ReactJs提供了JSX、UI更新機制、組件化原則等底層支持,但是正如我們在所有的程序語言基礎上搭建系統框架所面臨的問題1樣,很大程度上語言提供的是解析、編譯、運行進程的后臺調度等,真正實現1個利用常常由大量的3方控件或庫完成。所以當我們長時間使用1個框架后,常常墮入了框架的規則,忘記了語言的規則,在java中最明顯的例子就SSH了,在項目整體架構成熟后,我們好像就在干配置的工作,不斷的根據SSH的規則,保護著庫內或各層間的關聯。
但是如果不用框架,幾近是不可能的,由于各種框架或庫,是之前程序員的經驗總結與積累,這也就是每一個人在設計程序框架時需要面臨的經典問題:是選用輪子還是造輪子的問題?乃至在選輪子時,仍然存在苦惱,哪一個輪子好的問題。
在ReactJs開發進程中,你可以選擇任何你喜歡的組件,在http://react-component.github.io/badgeboard/,你可以找到各類ReactJs的組件。
但是目前為止,我仍然認為Material-UI是1款你應當首先選擇的UI控件庫(http://www.material-ui.com/#/components/app-bar)主要緣由有以下幾點:
1.完全基于ReactJs
Material-UI是1款完全基于ReactJs的控件,采取的是ReactJs的原理實現,雖然在初期的版本中存在為了推出控件,采取了原始的數據流和控制流方式,但是從其版本更新來看,它在不斷改造自己,是自己更ReactJS。
2.設計風格基于Material
Material是最近幾年來流行的設計方式,推重簡潔、明快的設計風格,在Material-UI中包含了前衛的設計元素,夠炫、夠Cool。
3.控件豐富、涵蓋所有典型場景
在選擇控件時,我們希望1個庫能涵蓋所有典型場景,但常常會出現很多的3方庫集成在1起的情形。采取Material-UI不能說涵蓋了所有所需控件,但最少涵蓋了所有典型場景。
4.活躍度高
選擇控件1個重要的斟酌因素是活躍度,活躍度高的意味著該控件經歷著各類實戰的考驗,能及時更新bug,控件庫的功能、性能更有保證。從github上我們可以看到參與的開發者和使用者均居高位。
5.版本更新頻率高
版本更新頻率高是個雙刃劍,你可能慶幸下1個版本修改了你急需修改的bug,也可能由于下1個版本的實現方法改變了致使你要重新修改代碼,但目前看來,Material-ui的版本變化處理修改bug外,均是是自己更reactjs。
6.同時支持SVG/Font Icon
7.設置樣式簡單
Material-ui不但支持1般采取Css class或在JSX中設置Inline Styles設置樣式,也能夠采取設置Themes的方式統1設置全部利用的樣式。如: