11個讓你的React 應用程式更上一層樓的庫

2022-02-07 web前端開發


英文 | https://javascript.plainenglish.io/eleven-libraries-to-take-your-react-app-up-a-notch-570c11923738

翻譯 | 楊小二

React 在 2013 年發布時,它立即席捲了整個編程世界。React 提供了一種輕鬆構建交互式 UI 組件的方法,同時管理整個應用程式的狀態。它是迄今為止最流行的 JavaScript 框架,也是最受歡迎的框架之一。因此,很多開發者每年會為 React 創建數百個開源庫。

在這裡,與你分享11個React項目中有效且易於實現的庫,我列出的這 11 個庫,都是開箱即用的庫,它們可將你的 React 應用程式提升到一個新的水平。1、Lodash

JavaScript 程式設計師可能都熟悉lodash,但 React 的新手可能不知道,每當你使用create-react-app. lodash可以消除處理數組、數字、對象、字符串等的麻煩,使 JavaScript 更容易。

你可以開始使用所有以下劃線 ( _)開頭的內置函數。下面是一個例子:

_.chunk(array, size)_.chunk(['a', 'b', 'c', 'd'], 2)      _.chunk(['a', 'b', 'c', 'd'], 3)      

這些方法非常適合迭代數組、對象和字符串,操作和測試值,以及創建複合函數。

所有功能和文檔地址:https://lodash.com/docs/4.17.15

2、date-fns

這個庫的標語是「It's like Lodash for Dates」和lodash類似,date-fns也有很多內置函數。無論你是嘗試轉換時區還是相互比較日期/時間,你都一定會從這個庫中找到一些用處。有超過 200 多種功能適用於所有場合。

要使用 date-fns,請找到你要查找的方法並像這樣導入它:

import { format, compareAsc } from 'date-fns'  format(new Date(2014, 1, 11), 'MM/dd/yyyy')        const dates = [    new Date(1995, 6, 2),    new Date(1987, 1, 11),       new Date(1989, 6, 10)    ] dates.sort(compareAsc) 

文檔可以在這裡找到:https://date-fns.org/docs/Getting-Started/

3、react-icons

使用react-icons可以 從十多個庫和數千個圖標中進行選擇,包括許多品牌徽標。最好的部分是圖標可以直接用作組件中的文本,因此,你不必像處理圖像一樣擔心 CSS 大小。

react-icons 利用 ES6 導入,你只需要導入你的項目正在使用的圖標即可,如下所示:

import { FaBeer } from 'react-icons/fa';function Question (){    return <h3> Lets go for a <FaBeer />? </h3>}

搜索圖標並訪問文檔地址:https://react-icons.github.io/react-icons/

4、react-portal

雖然很少使用Portal,但大多數 React 開發人員仍然熟悉它們。Portals 提供了一種流行的方式來將子組件渲染到存在於父組件的 DOM 層次結構之外的 DOM 節點中。

React 本身有一個內置的門戶創建器,但過程繁瑣,文檔可能有點密集。react-portal解決了這個問題。

要使用該庫,請使用標準 JavaScript 選擇器(如getElementById或 )將 HTML 代碼中的門戶容器作為目標querySelector,然後就大功告成了。

import { Portal } from 'react-portal';<Portal>    This text is portaled at the end of document.body!</Portal><Portal node={document && document.getElementById('new-york')}>    This text is portaled into New York!</Portal>

文檔地址:https://github.com/tajo/react-portal

5、react-calendar

這是 React 應用程式的終極日曆應用程式。react-calendar支持幾乎所有語言,而且設置起來又快又容易。

有了數十種可能的模板,日曆可以根據你的需要進行定製。下面是一個react-calendar使用示例:

import React, { useState } from 'react';import Calendar from 'react-calendar';
function MyApp() { const [value, onChange] = useState(new Date());
return ( <div> <Calendar onChange={onChange} value={value} /> </div> );}

查看現場演示:https://projects.wojtekmaj.pl/react-calendar/

訪問文檔地址:https://www.npmjs.com/package/react-calendar

6、react-tabs

react-tabs是一個易於訪問且可能是為 React 設置的最簡單的選項卡組件。它很簡單,其默認樣式可提供流暢的用戶體驗。

要實現,請使用下面的代碼作為起點。

import { Tab, Tabs, TabList, TabPanel } from 'react-tabs';import 'react-tabs/style/react-tabs.css';
export default () => ( <Tabs> <TabList> <Tab>Title 1</Tab> <Tab>Title 2</Tab> </TabList>
<TabPanel> <h2>Any content 1</h2> </TabPanel> <TabPanel> <h2>Any content 2</h2> </TabPanel> </Tabs>);

查看更多示例與查看文檔地址:https://reactcommunity.org/react-tabs/

7、react-sidebar

如果你剛開始接觸編程或設計樣式並不是你的強項,那麼你就會知道創建導航菜單有多麼困難。react-sidebar為你簡化該過程。

根據你實現的自定義和事件處理功能,代碼可能會變得有點冗長。但你可以看演示地址:https://paulusschoutsen.nl/react-sidebar/example/#

以及查看完整文檔地址:https://github.com/balloob/react-sidebar#installation

8、react-credit-cards

如果你正在開發使用信用卡付款的電子商務應用程式,那麼這個庫特別適合你。react-credit-cards在用戶輸入信用卡憑證時提供視覺刺激。雖然設置可能需要一些時間,但我是一個有趣的動畫,肯定會改善用戶體驗。

如何實現與演示地址:https://www.npmjs.com/package/react-credit-cards

9、@stripe/react-stripe-js

在信用卡主題方面,Stripe 在提供支付處理軟體和 API 的金融科技世界中享有盛譽,他們的 React 庫是大眾的最愛。如果你希望在你的應用程式中實現付款處理,請務必查看此處的文檔地址:https://stripe.com/docs/stripe-js/react10、react-toastify

如今,使用alert()已經過時並且在用戶體驗方面沒有太大作用。相反,用於react-toastify創建 Toast 通知。它使用簡單,還有很多自定義選項。

下面是一個示例代碼塊:

import React from 'react';
import { ToastContainer, toast } from 'react-toastify'; import 'react-toastify/dist/ReactToastify.css';
function App(){ const notify = () => toast("Wow so easy!");
return ( <div> <button onClick={notify}>Notify!</button> <ToastContainer /> </div> ); }

檢查文檔,以及演示地址:https://fkhadra.github.io/react-toastify/introduction/

11、semantic-ui-react

如果你想嘗試除 Bootstrap 之外的另一個樣式庫,那麼semantic-ui-react. 它是語義 UI的官方 React 集成,許多公司在日常工作中使用它。藉助大量內置功能,semantic-ui-react您可以通過向目標元素添加特定類來快速設計漂亮的 React 網站。

了解更多信息地址:ttps://react.semantic-ui.com/

綜上所述

無論你是 React 的新手還是從它一開始就一直在使用它,你一定會在某個時候使用不同的庫。它們可以用於極大的優勢並幫助提升你的代碼。

在構建下一個 React 項目時,嘗試實現此處共享的庫之一。也許有一天你會設計開發一個自己的庫!

感謝你的閱讀,祝編程愉快!

學習更多技能

請點擊下方公眾號

相關焦點

  • 5個很棒的 React.js 庫,值得你親手試試!
    隨之而來的是越來越多的庫的發布,給我們帶來了新的可能性,但最重要的是讓開發這工作變得越來越簡單。在本文中,介紹 5 個 React 庫,希望能給你帶來一些幫助。1. react-portal 我認為React中的 Portals(傳送門) 對大多數人來說都很熟悉,即使它們很少被使用。
  • 60+ 實用 React 工具庫,助力你高效開發!
    npm地址:https://www.npmjs.com/package/react-share6. create-react-appCreate React App 是一個命令行界面工具,讓您無需任何配置即可快速創建和運行 React 應用程式。
  • 2021 年你必須知道的 React 庫
    React 社區的現狀是通過 Facebook 的 create-react-app(CRA)。它提供了一個零配置的設置,並給你一個開箱即用並且簡單的啟動和運行的 React 應用程式。所有的工具都對您隱藏起來了,但是最終要由您來更改這些工具。
  • 2021 年你應該知道的 React 庫
    React 社區的現狀是通過 Facebook 的 create-react-app(CRA)。它提供了一個零配置的設置,並給你一個開箱即用並且簡單的啟動和運行的 React 應用程式。所有的工具都對您隱藏起來了,但是最終要由您來更改這些工具。
  • 2020 年你必須知道的 React 庫
    React 社區的現狀是通過 Facebook 的 create-react-app(CRA)。它提供了一個零配置的設置,並給你一個開箱即用並且簡單的啟動和運行的 React 應用程式。所有的工具都對您隱藏起來了,但是最終要由您來更改這些工具。
  • 推薦幾個 React Native UI 庫
    所以今天推薦幾個 RN 開發者必備的 UI 庫。React Native Elements如果你是一個獨立開發者的話,那麼這個庫可以幫你節省掉不少設計和實現一些炫酷的交互 UI 的時間了。它不但包含多種多樣的組件,而且有開發者在不斷的維護,並且圍繞這個庫形成了自己的開發者社區。
  • 十一個優質React Hook庫, 收藏備用
    媒體查詢以及任何應用程式或網站的響應能力都非常重要。它提供了支持TypeScript編寫。該軟體包具有定義明確的文檔,其中解釋了掛鈎的用法以及測試方法。在整個應用程式中,它用作全局狀態管理器。在React的最初版本發布幾個月後,它就隨鉤而上了。它通過現有connect()方法提供了HOC(高階組件)模式的替代方法。提供的最著名的hooks是:該文檔非常好,有點複雜,但是它將為您提供開始使用它們所需的任何信息。
  • 如何使用 React Native 構建實時 to do 應用程式
    我將在這個案例裡面使用最流行的移動框架之一 React Native 搭建一個待辦事項應用程式。我將使用 ReactiveSearch Native,這是一個提供 React Native UI 組件並幫助你快捷搭建數據驅動應用程式的開源庫。
  • React Status 中文周刊 #33 - 如何為 React 應用選擇狀態管理庫
    本周有許多很有意思的教程和庫,比如 Spectacle 可以使用 React 編寫 PPT。
  • React Status 中文周刊 #32 - Svelte VS React
    另外本周還推薦了 React 代碼整潔之道,為你提出了 8 個關於 React 代碼整潔的建議。Takuya Matsuyama結合伺服器實現 React Native 組件延遲加載 — 這是一種創新的方式來實現應用程式熱更新,而無需通過 App Store 來發布更新。
  • 如何正確地使用i18nex使React應用程式更國際化
    如果你的網站沒有本地化,你的用戶很有可能會跳過你的網站。因此,如果沒有讓你的網站支持多種語言,你可能會錯過大量的潛在用戶。在JavaScript生態系統中,有許多讓網站更加國際化的框架。這裡您可以找到一些JavaScript國際化框架的詳細信息。在本文中,我們將使用i18next框架來讓React.js應用程式更加國際化。
  • React Status 中文周刊 #8 - 100 行代碼實現 Facebook 的 Recoil React 庫
    López使用 i18next 進行 React 應用本地化的終極指南 — 無論用戶使用哪種語言,你的應用都能為他們提供服務,這可能是實現用戶增長最快和最有用的方式。i18next 這款強大的國際化框架,助你應用輕鬆實現國際化。
  • 使用React Native Testing庫進行組件測試(案例詳解)
    /譯者:明月在本篇文章中,我們將探討 React Native 應用程式開發生態系統中的單元測試基礎知識。React Native測試庫 提供了簡單而完整的 React Native測試實現程序。這是用於測試React Native組件的輕量級解決方案,它在react-test-renderer之上促進了實用方法。這將鼓勵更好的測試實踐。該庫與Jest並駕齊驅,但也可以與其他測試運行者合作。
  • 2021年React學習路線圖
    我相信「碼上學習」,這個庫將幫你從 React 應用中立即開始。它用幾個默認文件搭建項目,讓你直接開始編碼,了解 React 是怎麼工作的。你要理解這幾個基礎概念。學習這些概念時,毫無疑問你將遇到條件渲染和從列表中渲染多個組件。此時,你應該創建一個簡單的 React 應用。最後要理解的是,函數組件和類組件之間的差異,以及他們的用法,這就是 Hooks。
  • 十大最受歡迎的 React Native 應用開發編輯器
    你可以調試代碼,從命令終端快速運行 react-native 命令,並使用 IntelliSense 瀏覽 React Native API 的對象、函數和參數。5.vim-react-snippets - 一組為 Vim 打造的可與Facebook 的 React 庫一起使用的片段。vim-babel - 一組為 Vim 打造的可與Facebook 的 React 庫一起使用的片段。6.
  • 5個測試Vue.js程序的有用工具和庫
    但是,如果你未正確測試應用程式,那麼這些都不重要。軟體測試完善了整個流程,確保了產品的卓越質量。此外,它還能降低維護成本,提供更好的可用性和增強的功能。無論你想做什麼類型的測試,選擇合適的工具集都是優化軟體測試過程的重要因素。因此,在本文中,我將針對不同的測試角度,介紹vue.js的五個測試工具。
  • React Status 中文周刊 #26 - Aleph:基於 Deno 的 React 框架
    以及使用諸如 AWS CDK 之類的自動化工具,你可以在 React 應用中實現和部署兩種服務端渲染方案。Caleb Williams▶️ 介紹 10 個原生 React Hooks 並附上從 0 到 1 創建自定義 Hooks 的教程 — 如果你還沒有跟上 React Hooks 的潮流,那麼可以花 13 分 14 秒來看下這個視頻。
  • 我們用Flutter重寫了一個React Native應用
    React Native 在運行時將動態 JavaScript 代碼編譯為原生視圖,其餘代碼則通過嵌在應用程式內部的虛擬機來運行。Dart 是一門由谷歌開發的通用程式語言。它還可用於構建 Web、伺服器端、移動端和物聯網設備應用程式。Dart 受到很多程式語言的影響,其中對它影響最大的是 Java。Java 程式設計師應該很容易看出這兩種語言之間的相似之處。
  • 每個 React 程式設計師必備的 10 個 NPM 包
    在這篇文章中,我將向大家介紹10個NPM軟體包。不管你是正在學習React,還是已經是有經驗的開發者,都很有必要看一看。這些軟體包將涉及多個領域,例如從UI框架到基於實用程序的包。事不宜遲,讓我們開始吧。1.
  • 推薦 12 個好用的 React 的開源項目,開發效率又能提升了!
    Gatsby是一個基於反應的自由和開源框架,幫助開發人員構建熾熱的快速網站和應用程式。Formik 是世界上最流行的 React 和 React Native 開源表單庫。React 組件和庫的精選列表。