2018-8-13 seo達人
如果您想訂閱本博客內(nèi)容,每天自動發(fā)到您的郵箱中, 請點這里
移動跨平臺框架React Native經(jīng)過4年的發(fā)展,其生態(tài)已經(jīng)變得異常豐富,在使用React Native開發(fā)項目的過程中,為了提高開發(fā)效率,我們經(jīng)常會借鑒一些使用使用率比較高的開源庫,根據(jù)大眾的需求,對這些使用較高的 React-Native UI 庫,我們做一個簡單的總結(jié)和歸類,方便大家更好地入門 React Native。
本文只是收集了一些常見的UI庫和功能庫,除了上面介紹的知名第三方庫之外,還有很多實現(xiàn)小功能的庫,這些庫可以大大的提高我們的開發(fā)效率,并且可以在此基礎(chǔ)上進行二次開發(fā)。并且歡迎大家關(guān)注我的《React Native移動開發(fā)實戰(zhàn)》,第二版修改版會再近期再版,歡迎持續(xù)關(guān)注。
NativeBase 是一個廣受歡迎的 UI 組件庫,為 React Native 提供了數(shù)十個跨平臺組件。在使用 NativeBase 時,你可以使用任意開箱即用的第三方原生庫,而這個項目本身也擁有一個豐富的生態(tài)系統(tǒng),從有用的入門套件到可定制的主題模板。
React Native Elements是一個高度可定制的跨平臺 UI 工具包,完全用 Javascript 構(gòu)建。該庫的作者聲稱“React Native Elements 的想法更多的是關(guān)于組件結(jié)構(gòu)而不是設(shè)計,這意味著在使用某些元素時可以減少樣板代碼,但可以完全控制它們的設(shè)計”,這對于開發(fā)新手和經(jīng)驗豐富的老手來說都很有吸引力。
Shoutem也是一個 React Native UI 工具包,由 3 個部分組成:UI 組件、主題和組件動畫。該庫為 iOS 和 Android 提供了一組跨平臺組件,所有組件都是可組合和可定制的。每個組件還提供了與其他組件一致的預(yù)定義樣式,這樣可以在無需手動定義復(fù)雜樣式的情況下構(gòu)建復(fù)雜的組件。
項目地址:https://shoutem.github.io/ui/
UI Kitten這個庫提供了一個可定制和可重復(fù)使用的 react-native 組件工具包,該工具包將樣式定義移到特定位置,從而可以單獨重用組件或為組件設(shè)置樣式。通過傳遞不同的變量,可以很容易地“動態(tài)”改變主題樣式。
React Native Material UI是一組高度可定制的 UI 組件,實現(xiàn)了谷歌的 Material Design。請注意,這個庫使用了一個名為 uiTheme 的 JS 對象,這個對象在上下文間傳遞,以實現(xiàn)最大化的定制化能力。
React Native Material UI 項目地址:
React Native Material Kit是一套很有用的 UI 組件和主題,實現(xiàn)了谷歌的 Material Design。不過需要說明的是, React Native Material Kit在2017 年 12 月之后就停止維護了。
Nachos UI 是一個 React Native 組件庫,提供了 30 多個可定制的組件,這些組件也可以通過 react-native-web 在 Web 上運行。它通過了快照測試,支持格式化和 yarn,提供了熱火的設(shè)計和全局主題管理器。
Wix 工程公司正致力于開發(fā)這個進的 UI 工具集和組件庫,它還支持 react-native-animatable 和 react-native-blur。這個庫附帶了一組預(yù)定義的樣式預(yù)設(shè)(轉(zhuǎn)換為修飾符),包括 Color、Typography、Shadow、Border Radius 等。
React Native Paper是一個跨平臺的 UI 組件庫,它遵循 Material Design 指南,提供了全局主題支持和可選的 babel 插件,用以減少捆綁包大小。
Expo 示例應(yīng)用程序:
React Native Vector Icons是一組 React Native 的可定制圖標,支持 NavBar/TabBar/ToolbarAndroid、圖像源和完整樣式。它非常有用,而且被數(shù)千個應(yīng)用程序以及其他 UI 組件庫(如 react-native-paper)所使用。
Teaset是一個 React Native UI 庫,提供了 20 多個純 JS(ES6)組件,用于內(nèi)容顯示和動作控制。雖然它的文檔不夠詳盡,但它簡潔的設(shè)計吸引了我的眼球。
antd-mobile是由螞蟻金融團隊推出的一個開源的react組件庫,這個組件庫擁有很多使用的組件。
react-native-button是github上一個開源的button組件,目前仍保持比較快的更新頻率,提供比較豐富的Button功能。
react-native-image-viewer是一個圖片大圖瀏覽的庫,點擊圖片可以放大縮小。
react-native-image-picker是實現(xiàn)多個圖像選擇、裁剪、壓縮等功能的第三方庫,可以使用該庫實現(xiàn)圖片、照相等操作。
react-native-picker是React native最常見的滾輪控件,可以實現(xiàn)單滾輪、雙滾輪和三滾輪效果。
react-native-scrollable-tab-view是一個帶有TabBar和可切換頁面的控件。,在Android中可以看成是ViewPager和TabLayout的結(jié)合。
react-native-app-intro是實現(xiàn)引導(dǎo)頁的庫,當然開發(fā)者也可以自己手動實現(xiàn)。
項目地址:https://github.com/fuyaode/react-native-app-intro
3D Touch是實現(xiàn)React native 3D Touch的庫,可以用此庫很方便的實現(xiàn)3D Touch。效果如下:
react-native-snap-carousel是可以實現(xiàn)復(fù)雜效果的輪播圖庫,實現(xiàn)的效果如下:
react-native-blur是專門用于實現(xiàn)毛玻璃效果的。
react-native-actionsheet是實現(xiàn)底部彈框的組件,可以在Android和iOS平臺上共用,當然也可以自己封裝實現(xiàn)。
react-native-popover是React Native開發(fā)中常見的彈出提示框操作,其效果如下圖所示:
圖表在移動開發(fā)中應(yīng)用的場景可謂非常多,這里介紹一款使用的比較多的庫。
react-native-spinkit是一個很炫的加載動畫第三方庫,可以根據(jù)實際情況定制加載的動畫。
Facebook Design-iOS 10 iPhone GUI是iOS 10 公開版的 GUI 元素模板,包括 Sketch、Photoshop、Figma、XD 和 Craft。
第三方庫
UI套件
1, NativeBase
NativeBase 項目地址: https://github.com/GeekyAnts/NativeBase
入門學(xué)習(xí)地址: https://reactnativeseed.com/
2,React Native Elements
React Native Elements 項目地址:
https://github.com/react-native-training/react-native-elements
React Native Elements 示例項目:
https://react-native-training.github.io/react-native-elements/
3,Shoutem
4, UI Kitten
項目地址: https://github.com/akveo/react-native-ui-kitten
項目體驗地址:https://expo.io/@akveo/ui-kitten-explorer-app
5,React Native Material UI
https://github.com/xotahal/react-native-material-ui
包含庫組件及示例的清單:
https://github.com/xotahal/react-native-material-ui/blob/master/docs/Components.md
6,React Native Material Kit
項目地址: https://github.com/xinthink/react-native-material-kit
7,Nachos UI
項目地址: https://github.com/nachos-ui/nachos-ui
8,React Native UI Library
項目地址: https://github.com/wix/react-native-ui-lib
9,React Native Paper
React Native Paper 項目地址:
https://github.com/callstack/react-native-paper
https://expo.io/@satya164/react-native-paper-example
10,React Native Vector Icons
項目地址: https://github.com/oblador/react-native-vector-icons
示例項目:https://oblador.github.io/react-native-vector-icons/
11,Teaset
項目地址:https://github.com/rilyu/teaset
其他庫
1,antd-mobile
項目地址:https://github.com/ant-design/ant-design-mobile
2,react-native-button
項目地址:https://github.com/ide/react-native-button
3,react-native-image-viewer
項目地址:https://github.com/ascoders/react-native-image-viewer
4,react-native-image-picker
項目地址:https://github.com/react-community/react-native-image-picker
5,react-native-picker
項目地址:https://github.com/beefe/react-native-picker
6,react-native-scrollable-tab-view
項目地址:https://github.com/happypancake/react-native-scrollable-tab-view
7,react-native-app-intro
8,3D Touch
項目地址:https://github.com/jordanbyron/react-native-quick-actions
9,react-native-snap-carousel
除此之外,還可以實現(xiàn)Galley效果等多種效果。
項目地址:https://github.com/archriss/react-native-snap-carousel
10,react-native-blur
項目地址:https://github.com/react-native-community/react-native-blur
11,react-native-actionsheet
項目地址:https://github.com/beefe/react-native-actionsheet
12,react-native-popover
13,react-native-charts-wrapper
項目地址:https://github.com/wuxudong/react-native-charts-wrapper
14,react-native-spinkit
https://github.com/maxs15/react-native-spinkit
15,F(xiàn)acebook Design-iOS 10 iPhone GUI
藍藍設(shè)計的小編 http://bouu.cn