React樣式的模組化

2021-10-02 14:36:03 字數 1286 閱讀 2051

在react中,為了解決不同介面中具有相同類名導致樣式衝突的問題,從而產生了樣式的模組化,類似於vue中的scoped指令。

webpack.config.js檔案中,新增modules引數,啟用css的模組化。

localidentname是設定生成的類名的格式。

一般,我們使用的第三方ui元件,他們的樣式表檔案,都是以.css結尾的,所以,我們最好不要為.css字尾名的檔案,啟用模組化。我們可以手寫scssless的樣式檔案,這樣,我們只需要為scss檔案或less檔案啟用模組化就好了。

預設情況下,如果沒有為css啟用模組化,則接收到的itemstyles是個空物件。當啟用css模組化之後,匯入樣式表得到的itemstyles就變成了乙個樣式物件,其中,屬性名是在樣式表中定義的類名,屬性值是自動生成的乙個複雜的類名(防止類名衝突)。

import itemstyles from '../../css/commentitem.css'
commentitem.css檔案內容:

.box

.title

.body

console.log(itemstyles);輸出的內容:

注意:當啟用css模組化之後,這裡所有的類名,都是私有的,如果想要把類名設定成全域性的乙個類,可以把這個類名,用:global()給包裹起來,當使用:global()設定了全域性的類樣式之後,這個類不會被重新命名,只有私有的類才會被重新命名。

commentitem.css檔案中新增:

:global(.title)
此時console.log(itemstyles);輸出的內容:

介面上使用全域性.title類的方式:

React 樣式 CSS模組化

css模組化,通過require引入樣式這種方式,優點是 解決了命名衝突和全域性汙染的問題 如何使用 1.安裝css loader依賴 npm install style loader css loader d2.配置webpack的css loader3.匯入和使用 footer.css foot...

什麼是模組化?模組化的好處

1.高內聚低耦合,有利於團隊作戰,當專案很複雜的時候,將專案劃分為子模組分給不同的人開發,最後再組合在一起,這樣可以降低模組與模組之間的依賴關係體現低耦合,模組又有特定功能體現高內聚。2.可重用,方便維護,模組的特點就是有特定功能,當兩個專案都需要某種功能的時候,我們定義乙個特定的模組來實現該功能,...

什麼是模組化?模組化的好處

什麼是模組化?j a 應用架構設計 模組化模式與 osgi 一書中對它的定義是 模組化是一種處理複雜系統分解為更好的可管理模組的方式。所謂的模組化開發就是封裝細節,提供使用介面,彼此之間互不影響,每個模組都是實現某一特定的功能。模組化開發的基礎就是函式。模組化開發使 耦合度降低,模組化的意義在於最大...