」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 優雅的 TailwindCSS 與 React 集成

優雅的 TailwindCSS 與 React 集成

發佈於2024-08-01
瀏覽:359

Integração Elegante de TailwindCSS com React

介紹

TailwindCSS 作為創建響應式和可自訂使用者介面 (UI) 的創新工具脫穎而出。憑藉其實用性優先的方法,它允許開發人員在不離開 HTML(或在 React 的情況下是 JSX)的情況下設計他們的應用程式。本文介紹如何將 TailwindCSS 整合到 React 專案中,探討這種組合的好處,將其與其他 CSS 方法進行比較,並提供實際範例。

為什麼將 TailwindCSS 與 React 結合使用?

TailwindCSS 與 React 一起使用時具有多種優勢:

  • 開發效率:透過使用可直接應用於React元件的實用類,開發者無需編寫自訂CSS即可建立UI,顯著加快了開發流程。
  • 輕鬆回應:透過內建回應類,可以輕鬆創建適應不同螢幕尺寸的設計,而無需複雜的媒體查詢。
  • 自訂和設定: Tailwind 可以透過其設定檔進行高度客製化。開發人員可以調整設定以與專案的視覺標識保持一致,確保整個設計的一致性。

與其他 CSS 方法的比較

在 TailwindCSS 之前,BEM(區塊元素修飾符)和 CSS-in-JS 系統(如 Styled Components)等方法在 React 專案中很常見。雖然 BEM 需要詳細的手動類別名稱結構,但 CSS-in-JS 將樣式封裝在元件內,增加了套件大小並可能增加渲染時間。相比之下,Tailwind 提供了一個高效的中間立場:低風格開銷、快速執行和易於維護。

在 React 專案中設定 TailwindCSS

要將 TailwindCSS 整合到 React 專案中,請依照下列步驟操作:

1. 安裝與配置

首先,如果您還沒有一個新的 React 項目,請建立一個:

npx create-react-app my-tailwind-project
cd my-tailwind-project

透過npm安裝TailwindCSS:

npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -p

此命令建立 tailwind.config.js 和 postcss.config.js 設定文件,您可以根據需要自訂它們。

2. 設定CSS

在 src/index.css 中,新增 Tailwind 導入指令:

@tailwind base;
@tailwind components;
@tailwind utilities;

3. 在 React 元件中使用 TailwindCSS

現在您可以直接在 React 元件中使用 Tailwind 類別:

function App() {
  return (
    

Hello Tailwind!

Você está usando TailwindCSS com React!

); } export default App;

實例:個人資料卡

讓我們使用 TailwindCSS 和 React 建立一個簡單的個人資料卡:

function ProfileCard() {
  return (
    
Profile picture

João Silva

Desenvolvedor Front-end

); }

結論

將 TailwindCSS 整合到 React 專案中為 UI 開發提供了一種現代且高效的方法。 TailwindCSS 與 React 能夠根據您的喜好完全自訂和調整設計,並且能夠輕鬆應用響應式和高效能樣式,是一個強大的組合,可以在不影響品質或可維護性的情況下加快開發速度。在您的下一個項目中嘗試並注意差異!

版本聲明 本文轉載於:https://dev.to/vitorrios1001/integracao-elegante-de-tailwindcss-com-react-1je1?1如有侵犯,請聯絡[email protected]刪除
最新教學 更多>
  • JavaScript計算兩個日期之間天數的方法
    JavaScript計算兩個日期之間天數的方法
    How to Calculate the Difference Between Dates in JavascriptAs you attempt to determine the difference between two dates in Javascript, consider this s...
    程式設計 發佈於2025-04-25
  • 在JavaScript中如何並發運行異步操作並正確處理錯誤?
    在JavaScript中如何並發運行異步操作並正確處理錯誤?
    同意操作execution 在執行asynchronous操作時,相關的代碼段落會遇到一個問題,當執行asynchronous操作:此實現在啟動下一個操作之前依次等待每個操作的完成。要啟用並發執行,需要進行修改的方法。 第一個解決方案試圖通過獲得每個操作的承諾來解決此問題,然後單獨等待它們: c...
    程式設計 發佈於2025-04-25
  • 如何解決由於Android的內容安全策略而拒絕加載腳本... \”錯誤?
    如何解決由於Android的內容安全策略而拒絕加載腳本... \”錯誤?
    Unveiling the Mystery: Content Security Policy Directive ErrorsEncountering the enigmatic error "Refused to load the script..." when deployi...
    程式設計 發佈於2025-04-25
  • 為什麼儘管有效代碼,為什麼在PHP中捕獲輸入?
    為什麼儘管有效代碼,為什麼在PHP中捕獲輸入?
    在php ;?>" method="post">The intention is to capture the input from the text box and display it when the submit button is clicked.但是,輸出...
    程式設計 發佈於2025-04-25
  • 如何在php中使用捲髮發送原始帖子請求?
    如何在php中使用捲髮發送原始帖子請求?
    如何使用php 創建請求來發送原始帖子請求,開始使用curl_init()開始初始化curl session。然後,配置以下選項: curlopt_url:請求 [要發送的原始數據指定內容類型,為原始的帖子請求指定身體的內容類型很重要。在這種情況下,它是文本/平原。要執行此操作,請使用包含以下標頭...
    程式設計 發佈於2025-04-25
  • 如何使用Python有效地以相反順序讀取大型文件?
    如何使用Python有效地以相反順序讀取大型文件?
    在python 中,如果您使用一個大文件,並且需要從最後一行讀取其內容,則在第一行到第一行,Python的內置功能可能不合適。這是解決此任務的有效解決方案:反向行讀取器生成器 == ord('\ n'): 緩衝區=緩衝區[:-1] ...
    程式設計 發佈於2025-04-25
  • CSS強類型語言解析
    CSS強類型語言解析
    您可以通过其强度或弱输入的方式对编程语言进行分类的方式之一。在这里,“键入”意味着是否在编译时已知变量。一个例子是一个场景,将整数(1)添加到包含整数(“ 1”)的字符串: result = 1 "1";包含整数的字符串可能是由带有许多运动部件的复杂逻辑套件无意间生成的。它也可以是故意从单个真理...
    程式設計 發佈於2025-04-25
  • 為什麼HTML無法打印頁碼及解決方案
    為什麼HTML無法打印頁碼及解決方案
    無法在html頁面上打印頁碼? @page規則在@Media內部和外部都無濟於事。 HTML:Customization:@page { margin: 10%; @top-center { font-family: sans-serif; font-weight: ...
    程式設計 發佈於2025-04-25
  • 查找當前執行JavaScript的腳本元素方法
    查找當前執行JavaScript的腳本元素方法
    如何引用當前執行腳本的腳本元素在某些方案中理解問題在某些方案中,開發人員可能需要將其他腳本動態加載其他腳本。但是,如果Head Element尚未完全渲染,則使用document.getElementsbytagname('head')[0] .appendChild(v)的常規方...
    程式設計 發佈於2025-04-25
  • Java中Lambda表達式為何需要“final”或“有效final”變量?
    Java中Lambda表達式為何需要“final”或“有效final”變量?
    Lambda Expressions Require "Final" or "Effectively Final" VariablesThe error message "Variable used in lambda expression shou...
    程式設計 發佈於2025-04-25
  • 如何使用Regex在PHP中有效地提取括號內的文本
    如何使用Regex在PHP中有效地提取括號內的文本
    php:在括號內提取文本在處理括號內的文本時,找到最有效的解決方案是必不可少的。一種方法是利用PHP的字符串操作函數,如下所示: 作為替代 $ text ='忽略除此之外的一切(text)'; preg_match('#((。 &&& [Regex使用模式來搜索特...
    程式設計 發佈於2025-04-25
  • Java字符串非空且非null的有效檢查方法
    Java字符串非空且非null的有效檢查方法
    檢查字符串是否不是null而不是空的if (str != null && !str.isEmpty())Option 2: str.length() == 0For Java versions prior to 1.6, str.length() == 0 can be二手: if(str!= n...
    程式設計 發佈於2025-04-25
  • 如何在Chrome中居中選擇框文本?
    如何在Chrome中居中選擇框文本?
    選擇框的文本對齊:一個部分Chrome-only-lyly-ly-ly-lyly solution 您可能希望將文本集中在select框中,以獲取審美原因或提高可訪問性。但是,在CSS中的選擇元素中手動添加一個文本 - 對屬性可能無法正常工作。 初始嘗試 state)</option>...
    程式設計 發佈於2025-04-25
  • 如何實時捕獲和流媒體以進行聊天機器人命令執行?
    如何實時捕獲和流媒體以進行聊天機器人命令執行?
    在開發能夠執行命令的chatbots的領域中,實時從命令執行實時捕獲Stdout,一個常見的需求是能夠檢索和顯示標準輸出(stdout)在cath cath cant cant cant cant cant cant cant cant interfaces in Chate cant inter...
    程式設計 發佈於2025-04-25
  • Java數組中元素位置查找技巧
    Java數組中元素位置查找技巧
    在Java數組中檢索元素的位置 利用Java的反射API將數組轉換為列表中,允許您使用indexof方法。 (primitives)(鏈接到Mishax的解決方案) 用於排序陣列的數組此方法此方法返回元素的索引,如果發現了元素的索引,或一個負值,指示應放置元素的插入點。
    程式設計 發佈於2025-04-25

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3